使用命名类型 (IdentityUser) 时出错,将其分配给 var 时工作正常,为什么?
Error when using named type (IdentityUser), works fine when assigning it to var, why?
一行代码,当分配给正确的类型时与 var 的行为不同,我不明白为什么。
下面的行抛出空异常错误。当我通过 FindUser() 进行跟踪时,它确实返回了正确的用户对象。
IdentityUser identityUser = await _repo.FindUser(id, pass);
下一行确实按预期工作,没有 Null 异常,唯一的变化是将它分配给 var 而不是 IdentityUser
var identityUser = await _repo.FindUser(id, pass);
我的问题:为什么会这样?是否表示某处有代码味道?
正如@trailmax 指出的那样,我试图等待一个同步方法。替换为...
时有效
IdentityUser identityUser = _repo.FindUser(id, pass).Result;
一行代码,当分配给正确的类型时与 var 的行为不同,我不明白为什么。
下面的行抛出空异常错误。当我通过 FindUser() 进行跟踪时,它确实返回了正确的用户对象。
IdentityUser identityUser = await _repo.FindUser(id, pass);
下一行确实按预期工作,没有 Null 异常,唯一的变化是将它分配给 var 而不是 IdentityUser
var identityUser = await _repo.FindUser(id, pass);
我的问题:为什么会这样?是否表示某处有代码味道?
正如@trailmax 指出的那样,我试图等待一个同步方法。替换为...
时有效IdentityUser identityUser = _repo.FindUser(id, pass).Result;