當通過實體框架4.1添加記錄時,是否有直接的方式來檢索數據庫自動生成的主鍵?通過EF插入後獲取自動標識密鑰
例如:
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
我只想指出'SELECT @@ Identity'不是獲取最後插入的id的好方法。你應該使用'SCOPE_IDENTITY()' – Icarus
謝謝伊卡洛斯。我從未意識到這一點。猜猜我應該更新我的一些舊應用程序! – chrisg229
[我如何獲得插入實體的Id在實體框架中的可能的重複?](http://stackoverflow.com/questions/5212751/how-can-i-get-id-of-inserted-entity-in-entity -framework) –