Entity Framework に新しく挿入されたエンティティの ID へのアクセス
Entity Framework で頻繁に行われるタスクには、データベースの挿入直後にエンティティの ID を取得することが含まれます。 Entity Framework は通常、自動 ID 生成 (SQL Server の IDENTITY など) を採用します。
標準的なアプローチ
ObjectSet にエンティティを追加し、SaveChanges()
を呼び出すと、ID プロパティが自動的に設定されます。 その方法は次のとおりです:
<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 生成のカスタマイズ
場合によっては、ID 生成を制御する必要があるかもしれません。 Entity Framework の DatabaseGeneratedOption
属性は、さまざまな戦略を提供します。
手動 ID 割り当て
手動で割り当てられた ID の場合は、DatabaseGeneratedOption.None
を使用します。これにより、Entity Framework が ID を生成できなくなります。エンティティを追加する前に設定する必要があります。
計算された ID
ID が (テーブルからではなく) 計算される場合は、DatabaseGeneratedOption.Computed
を使用します。 Entity Framework は、insert ステートメントの実行後に ID を取得します。
概要
Entity Framework に新しく挿入されたエンティティの ID を取得するのは通常は簡単です。 自動 ID 生成がデフォルトですが、特定のシナリオに合わせてカスタマイズ オプションを使用できます。
以上がEntity Framework を使用して新しく挿入されたエンティティの ID を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。