Heim >Backend-Entwicklung >C++ >Wie rufe ich die von der Datenbank generierte ID nach dem Einfügen einer Entität mit Entity Framework ab?
Verwenden Sie Entity Framework, um die Identität der eingefügten Entität abzurufen
Entity Framework bietet eine praktische Möglichkeit, Entitäten in die Datenbank einzufügen. Allerdings kann es eine Herausforderung sein, die von der Datenbank zugewiesene ID der eingefügten Entität zu erhalten. Dieser Artikel befasst sich mit diesem Problem, indem er zwei Ansätze untersucht.
Methode 1: Zugeordnete Entitäts-ID verwenden
Dieser Artikel beginnt mit einer Lösung auf der Entity Framework-Website, bei der die zugewiesene ID vom Entitätsobjekt selbst abgerufen wird. Obwohl diese Methode die interne ID der Entität zurückgibt, stimmt sie möglicherweise nicht mit der ID der Datenbanktabelle überein, wenn der Datensatz gelöscht wird.
Methode 2: Datenbank-ID abrufen
Eine zuverlässigere Methode besteht darin, die von der Datenbank generierte ID abzurufen. Dies kann erreicht werden, indem einfach die Entität zum ObjectSet hinzugefügt und SaveChanges für den entsprechenden ObjectContext aufgerufen wird. Entity Framework legt die Id-Eigenschaft der Entität automatisch mit der von der Datenbank zugewiesenen Identität fest:
<code>using (var context = new MyContext()) { context.MyEntities.Add(myNewObject); context.SaveChanges(); int id = myNewObject.Id; // 数据库标识可用 }</code>
Entity Framework führt nach jedem INSERT eine SELECT SCOPE_IDENTITY()-Abfrage aus, um die generierte ID abzurufen und so einen genauen ID-Abruf sicherzustellen.
Das obige ist der detaillierte Inhalt vonWie rufe ich die von der Datenbank generierte ID nach dem Einfügen einer Entität mit Entity Framework ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!