可以为不同的ASP.NET MVC3区域使用不同的登录URL吗?
我在每个区域的视图部分看到一个web.config,我已经尝试过:
<authentication mode="Forms"> <forms loginUrl="~/Administration/Account/logon" timeout="2880" /> </authentication>
但它不能奏效。
干杯。
解决方法
我不知道.NET处理这个,但你可以创建一个自定义的
AuthorizationAttribute
public class CustomAuthorization : AuthorizeAttribute { public string Url { get; set; } public override void OnAuthorization(AuthorizationContext filterContext) { if (!filterContext.HttpContext.User.Identity.IsAuthenticated) { filterContext.HttpContext.Response.Redirect(Url); } base.OnAuthorization(filterContext); } }
添加到您的控制器/操作
[CustomAuthorization(Url="/Area/Login")] public class HomeController { //... }