【发布时间】:2015-03-27 11:57:57
【问题描述】:
我想知道是否有在 Visual C# MVC 中的路由之前添加过滤器。
我有一个Portal 区域,我想检查用户是否登录。
因此人们可以访问Portal/Login,但如果他们尝试访问Portal/Orders 或任何未经授权的内容,我希望能够将他们重定向回Portal/Login。
我使用过 PHP 框架,并且是 ASP.NET MVC 的新手。
【问题讨论】:
-
通常将
[Authorize]属性应用于控制器,然后将[AllowAnonymous]属性应用于登录/注册方法。解释请参考this article。 -
@StephenMuecke 感谢您的链接!但是我有一个 LoginController 和 RegisterController。我闻到这是不好的做法,这在 ASP 中是如何解决的?
-
通常你只有
AccountController,其中包括Login()、Register()、ChangePassword()等方法。如果你在VS中创建一个带有表单身份验证的新项目,这将全部被创建给你,这样你就可以看看它是如何工作的。 -
但是我有一个传送门区域,所以有点不同。如果我将 HomeController 与 Login() 操作一起使用,它将无法正常工作,因为在
Portal/Login上它正在寻找 LoginController..
标签: asp.net-mvc asp.net-mvc-4 routing