Entity Framework を使用して、挿入されたエンティティの ID を取得します
Entity Framework は、エンティティをデータベースに挿入する便利な方法を提供します。ただし、挿入されたエンティティのデータベースによって割り当てられた ID を取得するのは困難な場合があります。この記事では、2 つのアプローチを検討することでこの問題に対処します。
方法 1: 割り当てられたエンティティ ID を使用する
この記事は、エンティティ オブジェクト自体から割り当てられた ID を取得することを含む Entity Framework Web サイトのソリューションから始まります。このメソッドはエンティティの内部 ID を返しますが、レコードが削除された場合、データベース テーブルの ID と一致しない可能性があります。
方法 2: データベース識別子を取得する
より信頼性の高い方法は、データベースで生成された ID を取得することです。これは、エンティティを ObjectSet に追加し、関連する ObjectContext で SaveChanges を呼び出すだけで実現できます。 Entity Framework は、データベースによって割り当てられた ID を使用してエンティティの Id プロパティを自動的に設定します:
<code>using (var context = new MyContext()) { context.MyEntities.Add(myNewObject); context.SaveChanges(); int id = myNewObject.Id; // 数据库标识可用 }</code>
Entity Framework は、各 INSERT の後に SELECT SCOPE_IDENTITY() クエリを実行して生成された ID を取得し、正確な ID 取得を保証します。
以上がEntity Framework でエンティティを挿入した後にデータベースで生成された ID を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。