Heim >Backend-Entwicklung >C++ >Wie rufe ich die ID einer neu eingefügten Entität mithilfe des Entity Framework ab?

Wie rufe ich die ID einer neu eingefügten Entität mithilfe des Entity Framework ab?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-21 10:57:38727Durchsuche

How Do I Retrieve the ID of a Newly Inserted Entity Using Entity Framework?

Zugriff auf die ID einer neu eingefügten Entität im Entity Framework

Eine häufige Aufgabe im Entity Framework besteht darin, die ID einer Entität unmittelbar nach dem Einfügen in die Datenbank abzurufen. Entity Framework verwendet normalerweise die automatische ID-Generierung (wie IDENTITY in SQL Server).

Standardansatz

Durch das Hinzufügen einer Entität zu einem ObjectSet und den Aufruf von SaveChanges() wird die ID-Eigenschaft automatisch ausgefüllt. So geht's:

<code class="language-csharp">using (var context = new MyContext())
{
    context.MyEntities.Add(myNewObject);
    context.SaveChanges();

    int id = myNewObject.Id; // The Id property is now populated
}</code>

ID-Generierung anpassen

Manchmal müssen Sie möglicherweise die ID-Generierung steuern. Das DatabaseGeneratedOption-Attribut von Entity Framework bietet verschiedene Strategien.

Manuelle ID-Zuweisung

Für manuell zugewiesene IDs verwenden Sie DatabaseGeneratedOption.None. Dadurch wird verhindert, dass Entity Framework eine ID generiert. Sie müssen es festlegen, bevor Sie die Entität hinzufügen.

Berechnete IDs

Wenn die ID berechnet wird (nicht aus einer Tabelle), verwenden Sie DatabaseGeneratedOption.Computed. Entity Framework ruft die ID ab, nachdem die Einfügeanweisung ausgeführt wurde.

Zusammenfassung

Das Abrufen der ID einer neu eingefügten Entität im Entity Framework ist im Allgemeinen einfach. Die automatische ID-Generierung ist die Standardeinstellung, es stehen jedoch Anpassungsoptionen für bestimmte Szenarien zur Verfügung.

Das obige ist der detaillierte Inhalt vonWie rufe ich die ID einer neu eingefügten Entität mithilfe des Entity Framework ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn