web-dev-qa-db-ja.com

EF経由の挿入後に自動IDキーを取得

Entity Framework 4.1を介してレコードを追加するときに、自動生成されたDB主キーを取得する簡単な方法はありますか?

例えば:

dbcontext.Entity_Tables.Add(new Entity_Table { item1 = val1, item2 = val2 });
dbcontext.SaveChanges();
newPK = ???;

同等のSQLは次のようになります。

newPK = executeOnDB("INSERT INTO Entity_Table (item1, item2) VALUES (val1, val2);SELECT @@Indentity";);

ところで私はMySQLを使用していますが、SQLはMSSQLと同じになります

45
chrisg229

EFは、エンティティオブジェクトをIDで更新する必要があると思います。

var entity = new Entity_Table { item1 = val1, item2 = val2 };
dbcontext.Entity_Tables.Add(entity);
dbcontext.SaveChanges();
int newPK = entity.ID;
93
Omer Bokhari