Для таблицы с идентификатором:
[AutoIncrement]
public int Id { get; set;}
При вставке новой строки в базу данных, каков наилучший способ получить идентификатор объекта?
Например:
db.Insert < > (новый пользователь());
Значение Id равно 0 после вставки, но в базе данных это, очевидно, не так. Единственная возможность, которую я вижу, следующая:
Id = (int)db.GetLastInsertId();
Однако я не считаю, что это будет безопасный звонок. Если есть 100 вставок, происходящих одновременно, может быть возвращен идентификатор для другой вставки. В EF, когда вы делаете вставку, для вас настроен идентификатор.
Кто-нибудь знает, как лучше всего это сделать?