Dieses Problem tritt auf, wenn Entity Framework (EF) auf einen Versuch stößt, den Wert einer Identitätsspalte in einer Datenbank explizit festzulegen Tisch. Identitätsspalten werden normalerweise automatisch von der Datenbank generiert, und EF verarbeitet diesen Prozess standardmäßig nahtlos.
Im bereitgestellten Beispiel wird der Fehler beim Speichern einer neuen GroupMember-Entität ausgelöst. Die Datenbanktabelle verfügt über eine Identitätsspalte mit dem Namen „Id“, und in der EF-Designerdatei wird „StoreGeneratedPattern“ auch als „Identität“ für diese Spalte angegeben. Der Code scheint jedoch zu versuchen, manuell einen Wert von 0 für die Id-Eigenschaft der Entität einzufügen.
Um dieses Problem zu beheben, stellen Sie sicher, dass Sie nicht versuchen, den Wert explizit für Identitätsspalten festzulegen. Verlassen Sie sich stattdessen darauf, dass die Datenbank Werte automatisch generiert und zuweist.
Aktualisieren Sie bei Bedarf Ihre edmx-Datei, um die korrekten Eigenschaften Ihrer Tabelle widerzuspiegeln. Überprüfen Sie insbesondere, ob das IsDbGenerated-Attribut in der Designerdatei für die Identitätsspalte auf true gesetzt ist. Ist dies nicht der Fall, fügen Sie dieses Attribut manuell hinzu, um anzugeben, dass die Datenbank die Wertgenerierung für diese Spalte übernehmen soll.
Das obige ist der detaillierte Inhalt vonWarum gibt Entity Framework beim Einfügen in eine Identitätsspalte einen Fehler aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!