这是怎么回事? User.Identity.GetUserName() 在 View 中工作正常,例如在登录部分 View 中。但如果我在 Controller 中使用它,它会抛出空引用异常。
我正在查看页面,用户名显示在标题中,然后,如果我单击指向我尝试使用它的 Controller 的链接,则会收到空引用异常。
我应该补充一点,如果我这样做,效果很好:
var httpContext = System.Web.HttpContext.Current;
_userName = httpContext != null ? httpContext.User.Identity.Name : "Testing";
所以大多数时候我只是好奇。
最佳答案
您将调用User.Identity.GetUserName();的代码放在哪里?
?如果它是在构造函数上,那么您将得到空引用异常 - 因为对象 User 尚未在构造函数中初始化。
关于asp.net-mvc - MVC5 User.Identity.GetUserName() 在 Controller 中为 Null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23330022/