我使用ASP Net核心身份以将用户登录他的帐户
但是由于某种原因,它开始给我一个例外
invalidoperationException:无法跟踪Entity类型'用户'的实例,因为另一个具有键值'{ID:99D1AA12-3F75-497D-A4CC-A4CC-5D2103C1B042}'的实例已经被跟踪。连接现有实体时,请确保仅附加具有给定键值的一个实体实例。
是什么原因引起的?
public async Task<IActionResult> Login(string Login, string Password, string ReturnUrl = "/")
{
var user = await _context.Users.AsNoTracking().FirstOrDefaultAsync(x => x.UserName == Login);
if (user == null)
{
return View("Error");
}
var sign = await _signInManager.PasswordSignInAsync(user, Password, true, true); // here
if(!sign.Succeeded)
{
return View("Error");
}
return Redirect(ReturnUrl);
}
您在此处使用Asnotracking,这就是问题的原因。删除它,它将可以找到。
也请确保您在使用之前就知道什么意思。
欢呼