rak*_*los 4 c# asp.net-mvc razor
我想运行一些使用User.Identity.Name的代码,
我想在用户第一次进入网站时运行该代码.(可以每次关闭浏览器然后重新打开网站)
我尝试将它放在global.asax的Application_Start中,但User.Identity.Name名称返回null;
我怎样才能做到这一点?
根据您的描述,您可能希望将代码放在Session_Start中,而不是Application_Start.Session_Start是应用程序第一次看到每个用户时触发的事件.
以下是Global.asax中可用的事件列表:http://msdn.microsoft.com/en-us/library/system.web.httpapplication_events%28v=VS.100%29.aspx
User.Identity.Name仅在用户通过身份验证时才会为null.如果您正在使用,Forms Authentication这将在您致电时发生FormsAuthentication.SetAuthCookie.如果您使用的是集成Windows身份验证,则通常会在用户首次请求站点时自动对其进行身份验证.通常你不应该尝试访问它Application_Start.您可以编写自定义授权Application_AuthenticateRequest方法,该方法在安全模块建立用户身份时触发.
| 归档时间: |
|
| 查看次数: |
1247 次 |
| 最近记录: |