C# 使用LINQ to SQL插入后返回ID
我知道已经有很多关于这方面的话题了,因为我已经在谷歌上搜索过了,但就我所见,没有一个能适合我的代码。我只想在插入后从数据库返回一个自动生成的ID。这是我代码的一部分:C# 使用LINQ to SQL插入后返回ID,c#,linq-to-sql,using,C#,Linq To Sql,Using,我知道已经有很多关于这方面的话题了,因为我已经在谷歌上搜索过了,但就我所见,没有一个能适合我的代码。我只想在插入后从数据库返回一个自动生成的ID。这是我代码的一部分: using (***LINQDataContext dc = new ***LINQDataContext()) { dc.Users.InsertOnSubmit(new User { Username = user, Passwor
using (***LINQDataContext dc = new ***LINQDataContext())
{
dc.Users.InsertOnSubmit(new User
{
Username = user,
Password = EncryptPassword(user, pass, 1, null, null),
Email = email
});
dc.SubmitChanges();
return true;
}
您需要使用语句将您的
新用户…
提升为的一个局部变量,这样您就可以在SubmitChanges()
之后访问它,对吗?(ducks)Naah EncryptPassword是我使用的密码哈希函数。但是如果您使用的是Linq-2-sql,您可能希望返回用户而不是ID。。。
var newUser = new User {
Username = user,
Password = EncryptPassword(user, pass, 1, null, null),
Email = email
};
dc.Users.InsertOnSubmit(newUser);
dc.SubmitChanges();
// any identity / rowversion properties should now have values
var id = newUser.Id;