我使用实体框架将数据插入到表中,但现在我需要从上次执行的查询中检索最后一个ID。如何从数据库检索最后一个插入ID
这里是我的代码
var filedbdata = "'" + FileTitle + "'" + "," +
"'" + path + "'" + "," +
"'" + Session["UserID"] + "'";
var query = "insert into File_Upload(file_title,file_loc,file_userid) values(" + filedbdata + ")";
db.Database.ExecuteSqlCommand(query);
db.SaveChanges();
int lastid = ??
为什么字符串连接,如果你可以使用安全的SQL参数? –
完全不确定代码,但您应该可以通过使用.OrderByDescending降序排列数据来订购数据,然后选择此列表中的第一项。 – James
为什么你使用EntityFramework如果你正在手动构建简单的SQL查询呢?请参阅http://stackoverflow.com/questions/5212751/how-can-i-get-id-of-inserted-entity-in-entity-framework以获取您的问题的答案,以及如何编写代码的示例。如果您想从查询中返回最新的ID,请添加'SELECT SCOPE_IDENTITY()'。 –