标有[Authorize]属性的方法将User.Identity.Name设置为null

时间:2012-08-20 09:50:04

标签: asp.net asp.net-mvc-3 razor forms-authentication

这怎么可能?使用MVC Razor,我用[Authorize]属性标记了我的方法,这意味着用户必须登录才能访问视图吗?但是,有时我将User.Identity.Name值作为null(那么谁登录了呢?)。

我的方法没有在authorize属性中定义任何角色,如下所示:

[Authorize]
public ActionResult PageToView(){
...
return View();
}

编辑:我正在使用默认的角色和成员资格提供程序。

1 个答案:

答案 0 :(得分:4)

之前我遇到过类似的问题,原因是HttpContext.Current.User永远不会被填充。

请查看HttpContext.Current.User.Identity.Name returning null

我希望有所帮助。