我想知道如何在 MVC3 中模拟使用 [Authorize] 属性装饰控制器?我正在使用自定义会员资格提供商。我想测试一个控制器是否已用该属性装饰,并且您已获得授权,以及如果您没有获得授权,会发生什么情况。我正在使用起订量。这方面有什么好的建议吗?!
更新:
我目前收到一个 NullreferenceException,提示“对象引用未设置到对象的实例”。这与本文前面提到的错误相同使用授权属性时出现 NullReferenceException https://stackoverflow.com/questions/7159791/nullreferenceexception-while-using-authorize-attribute
这与授权属性有关。我在iis下运行而不是使用cassini。有谁知道这是否与应用程序池和用户权限有关。在修复此问题之前,我对授权属性进行的测试将无法工作。
也许还有其他方法来测试授权属性?非常感谢。
UPDATE2因此,在一位同事的广泛研究和调试帮助之后,我提到使用 [Authorize] 属性来解决问题。 web.config 中似乎缺少此行:
<modules runAllManagedModulesForAllRequests="true">
奇怪的是,这并没有给共享主干或处于测试环境的另一位同事造成问题。它只给我本地带来了问题。这可能与 GAC 中的某些事情有关。无论如何,现在一切正常。
Thanks.
几个月前我写了一篇关于这一点的博客文章:
http://thomasardal.com/unit-testing-attribute-decorations/ http://thomasardal.com/unit-testing-attribute-decorations/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)