ホームページ > バックエンド開発 > C++ > Entity Framework にエンティティを挿入した後にデータベースで生成された ID を取得するにはどうすればよいですか?

Entity Framework にエンティティを挿入した後にデータベースで生成された ID を取得するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-21 11:11:09
オリジナル
605 人が閲覧しました

How Do I Retrieve a Database-Generated ID After Inserting an Entity in Entity Framework?

Entity Framework でデータベース生成された ID を取得します

Entity Framework (EF) を使用してデータベースにオブジェクトを挿入する場合、多くの場合、新しく挿入されたエンティティのデータベース生成 ID を取得する必要があります。 EF は、これを実現する便利な方法を提供します。

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

  int id = myNewObject.Id; // ID 现在可用
}</code>
ログイン後にコピー

自動生成された ID (MS SQL の IDENTITY など) を使用する場合、EF は各 INSERT ステートメントの後に SELECT SCOPE_IDENTITY() クエリを自動的に実行します。これにより、挿入されたオブジェクトの ID プロパティに、データベースに割り当てられた値が正しく設定されるようになります。

ただし、この方法はデータベースで生成された ID でのみ機能することに注意することが重要です。カスタム生成された ID (GUID など) を使用する場合は、オブジェクトをコンテキストに追加する前に ID プロパティを手動で設定する必要があります:

<code class="language-csharp">myNewObject.Id = Guid.NewGuid();
context.MyEntities.Add(myNewObject);
context.SaveChanges();</code>
ログイン後にコピー

以上がEntity Framework にエンティティを挿入した後にデータベースで生成された ID を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート