Entity Framework-Fehler: Expliziten Wert in Identitätsspalte einfügen
Wenn der Fehler „Kann keinen expliziten Wert für Identitätsspalte in Tabelle einfügen“ auftritt, Es zeigt an, dass versucht wird, einen bestimmten Wert in eine Identitätsspalte einzufügen, die automatisch von der Datenbank generiert wird.
Dieses Problem tritt in Entity Framework auf kann auftreten, wenn die Identitätsinkrementspalte der Datenbank festgelegt ist, die StoreGeneratedPattern-Eigenschaft in der EF-Designdatei jedoch ebenfalls auf Identität festgelegt ist. Dies führt dazu, dass EF die Spalte als Nicht-Identitätsspalte behandelt und versucht, einen Wert einzufügen, anstatt sich auf die automatische Inkrementierung der Datenbank zu verlassen.
Um dieses Problem zu beheben, passen Sie entweder die Einstellungen für die Identitätsinkrementierung der Datenbank oder die EF an StoreGeneratedPattern-Eigenschaft der Designdatei.
Ein Vorschlag besteht darin, sicherzustellen, dass das Attribut „IsDbGenerated=true“ in der EF-Designerdatei für vorhanden ist die Eigenschaft, die der Identitätsspalte in der Datenbank entspricht. Dies zeigt an, dass der Wert von der Datenbank generiert werden sollte.
Alternativ können Sie die edmx-Datei aktualisieren, um diese Änderung widerzuspiegeln, wenn die Datenbank den Wert automatisch zuweist. Durch die Aktualisierung der edmx-Datei können Sie festlegen, dass die Spalte datenbankgeneriert ist und ihr kein bestimmter Wert aus dem Anwendungscode zugewiesen werden soll.
Das obige ist der detaillierte Inhalt vonWarum wirft Entity Framework den Fehler „Expliziter Wert für Identitätsspalte kann nicht eingefügt werden' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!