首页 新闻 会员 周边 捐助

ASP.NET MVC 表单验证的问题

0
悬赏园豆:20 [已解决问题] 解决于 2015-02-08 15:30

定义了Web应用为表单验证,允许访问所有的页面,然后由页面来实现真正的验证,方案如下:

 

1、给需要验证的controller或action配置自定义的action filter特性

2、在filter特性中针对OnExected和OnExecuting两个方法进行编程,发现:

无论在哪个地方,通过form验证系统获取当前登录用户都是失败的,而只有在action里来调用才是有效的。

3、修改使用基类controller,在基类中重写OnExecuted和OnExecuting两个方法,现象相同。

 

不知各位有什么高招。

519740105的主页 519740105 | 大侠五级 | 园豆:5810
提问于:2014-12-17 12:48
< >
分享
最佳答案
0

OnAuthorize这个里面写验证,还有,就说获取失败,你可以单独看执行顺序。

收获园豆:10
幻天芒 | 高人七级 |园豆:37207 | 2014-12-17 14:27
其他回答(2)
0

OnAuthorize应该是MVC自带的授权过滤器吧,你可以自己写成自定义过滤器啊。完全自定义,不要用原来的。

收获园豆:10
tianya22110 | 园豆:228 (菜鸟二级) | 2014-12-19 14:40
0

问题解决了,原来是:在System.WebServer节点里有一个移除Form授权的配置:

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="FormsAuthentication" />
    </modules>
  </system.webServer>
519740105 | 园豆:5810 (大侠五级) | 2015-02-08 15:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册