get Ident_Current from Linq

本文关键字:from Linq Current Ident get | 更新日期: 2023-09-27 18:12:14

如何获得Ident_Current from linq
我试过这个代码,但得到错误的数据返回。

HamdeshDatabaseEntities hmd = new HamdeshDatabaseEntities();
int varMaxAdvertiseId = Convert.ToInt32(hmd.Database.ExecuteSqlCommand("Select IDENT_CURRENT ('HMDAdvertiseManage')").ToString());

当我在服务器上执行Select IDENT_CURRENT ('HMDAdvertiseManage')时,它返回CurrentId
但是当我通过Linq在前端执行它时,它总是返回-1
我不知道为什么我得到这个。
请给我一个更好的选择

get Ident_Current from Linq

您必须使用SqlQuery而不是ExecuteSqlCommand

HamdeshDatabaseEntities hmd = new HamdeshDatabaseEntities();
int varMaxAdvertiseId = Convert.ToInt32(hmd.Database.SqlQuery<decimal>("Select IDENT_CURRENT ('HMDAdvertiseManage')", new object[0]).FirstOrDefault());

ExecuteSqlCommand将返回受INSERT/UPDATE/DELETE语句影响的行数。在您的示例中,它返回-1,因为它没有影响任何行。