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

Entity Framework でエンティティを挿入した後にデータベースで生成された ID を取得する方法

Patricia Arquette
リリース: 2025-01-21 11:07:10
オリジナル
312 人が閲覧しました

How to Retrieve the Database-Generated ID After Inserting an Entity with Entity Framework?

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 サイトの他の関連記事を参照してください。

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