【发布时间】:2011-02-24 00:44:14
【问题描述】:
你好,
我需要构建一个具有类似门户功能的站点,其中请求中的参数将识别门户。就像这样 http://domain/controller/action/portal
现在我的问题是,如果门户不存在,则必须重定向到另一个站点/页面,并且用户可以登录到一个门户,但是如果用户来到另一个门户,则必须将用户重定向回该门户的登录页面。
我现在有一些工作,但我觉得管道中必须有一个中心位置来处理这个。我当前的解决方案使用自定义操作过滤器检查门户参数并查看门户是否存在并检查用户是否登录该门户(用户登录的门户在身份验证 cookie 中)。我在 application_postauthentication 事件中创建了自己的 IIndentiy 和 IPrincipal。
我目前的方法有两个问题:
1:它并没有真正强制执行,我必须将属性添加到所有控制器和/或操作。
2:用户的身份验证并没有真正起作用,我希望它能够起作用。但为此,我需要在创建 IPrincipal/IIndenty 时访问路线的参数,但我似乎无法找到正确的位置。
希望有大神指点一下 理查德。
【问题讨论】:
标签: asp.net-mvc model-view-controller asp.net-mvc-routing