如何获取Ident_Current from linq
我试过这段代码,但得到了错误的数据作为回报。
HamdeshDatabaseEntities hmd = new HamdeshDatabaseEntities();
int varMaxAdvertiseId = Convert.ToInt32(hmd.Database.ExecuteSqlCommand("Select IDENT_CURRENT ('HMDAdvertiseManage')").ToString());当我在服务器上执行SelectIDENT_CURRENT ('HMDAdvertiseManage')时,它返回CurrentId。
但是,当我在前端通过Linq执行它时,它总是返回-1
我不知道我为什么要得到这个。
请给我一个更好的选择
发布于 2014-07-10 11:33:42
您必须使用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,因为它没有影响任何行。
https://stackoverflow.com/questions/24674817
复制相似问题