2012-11-20 191 views
2

RedirectToRouteResult不会重定向到指定的控制器 - 操作对。ASP.NET MVC 3 RedirectToRouteResult

public class CustAuthorizeAttribute : AuthorizeAttribute, IAuthorizationFilter 
{ 
    ... 
    public override void OnAuthorization(AuthorizationContext filterContext) 
    { 
    base.OnAuthorization(filterContext); 
    ... 
    if (...) { 
     var routeDictionary = new RouteValueDictionary { { "action", "Forbidden" }, { "controller", "Error" } }; 
     filterContext.Result = new RedirectToRouteResult(routeDictionary);      
    } 
    } 
} 

请帮忙。

+0

它的路线哪里来?你有什么特别的路线设置?你的路由规则是什么样的? – dreza

回答

1

或许你可以尝试像:

UrlHelper urlHelper = new UrlHelper(filterContext.HttpContext.Request.RequestContext); 
filterContext.Result = urlHelper.Action("Forbidden" , "Error");