c# – 使用授权属性时出现NullReferenceException
我在HomeController上有[Authorize]属性,每当我尝试访问它时,它都会抛出NullReferenceException
这真的很奇怪,因为我之前已经多次使用[授权]并且它工作得很好.在这种情况下,唯一的区别是此应用程序使用Windows 7和Windows在我们自己的Web服务器上托管. IIS 7.5 这是Stack Trace:
编辑: 在查看AuthorizeCore方法的代码时,似乎AuthorizeCore抛出了NullReferenceException,因为它获取了一个NULL HttpContextBase. 有可能吗?因为应用程序中的其他所有工作都很好,比如访问数据库,创建auth cookie等. 编辑2: 只有在将其发布到Web Server后才会发生这种情况.在开发过程中,它在Visual Studio中运行得非常好. 解决方法
问题更糟糕HttpContext甚至在Controller和Razor视图中都没有.所以,我使用aspnet_regiis -ir重新安装ASP.NET v4.0.然后使用在注册期间创建的ASP.NET 4.0池而不是使用DefaultAppPool.
它开始工作正常.它还解决了我的另一个覆盖< modules runAllManagedModulesForAllRequests =“true”/>的问题.在我的应用程序web.config中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |