2

我需要知道如何知道给定表的 SQL Server 数据库中最后插入的 id 是什么?

int identity没有使用 guid,如果 NHibernate 作为我的 ORM 很重要。

谢谢

4

2 回答 2

5

你可以尝试这样的事情:

var sql = "SELECT IDENT_CURRENT('TableName')";
var query = session.CreateSQLQuery(sql);
var result = query.UniqueResult();

这将返回为给定表生成的最后一个标识值。

于 2012-08-06T11:46:17.670 回答
4

根据您的 ID 的生成方式,您应该能够直接从以下位置返回它ISession.Save()

int insertedID = (int)session.Save(entity);
于 2012-08-06T11:34:18.710 回答