verwendetes Datenbanksystem: MSSQL
Hey,
also langsam macht mich das EF wahnsinnig.
Habe eine ganz normale Code-First Migration erstellt mit einer ganz normalen RowVersion.
Hat auch alles geklappt, die Migration sieht gut aus und in der Datenbank sieht es auch gut aus:
RowVersion(timestamp, not null)
Im Model:
[Required, DatabaseGenerated(DatabaseGeneratedOption.Computed)]
[Timestamp]
byte[] RowVersion { get; set; }
Habe das auch in anderen Projekten.
Wenn ich hier nun ein Insert mache - also ein neues Objekt anlege und mit Daten fülle (ausser RowVersion) und dann
SaveChanges() bekomme ich eine> Fehlermeldung:
DbEntityValidationException
mit dem Hinweis, dass das Feld RowVersion ein Pflichtfeld ist.
Bisher wurde das vom EF immer automatisch verwaltet und RowVersion automatisch gesetzt.
Bei Update geht es wie gehabt.
Habe ich was vergessen?
EF Core ist Open Source auf GitHub.
Feel free einen Bug zu erstellen (sofern er nicht schon existiert).
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Also laut Doku genügt ein Timestamp Attribute oder Timestamp Attiribute, bzw. sollte nicht noch ein Required Attribute verwendet werden.