对于具有标识的表:
[AutoIncrement]
public int Id { get; set;}
向数据库中插入新行时,检索对象 Id 的最佳方法是什么?
例如:
db.Insert<> (new User());
插入后Id的值为0,但在数据库中显然不是这样。我能看到的唯一可能性如下:
Id = (int)db.GetLastInsertId();
但是,我不相信这是一个安全的电话。如果同时发生 100 个插入,则可能会返回另一个插入的 Id。在 EF 中,当您执行插入操作时,会为您设置 ID。
有谁知道解决这个问题的最佳方法?