在ActionFilterAttribute中执行重定向(最好是重定向到操作)的最佳方法是什么?
我希望能够从ActionFilterAttribute中将数据传递到控制器操作中。
答案 0 :(得分:11)
要重定向,请覆盖OnActionExecuting
并将新RedirectToRouteResult
分配给filterContext.Result
:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
filterContext.Result = new RedirectToRouteResult(
new RouteValueDictionary { { "action", "newActionName" },
{ "actionArgument", someData } });
}
要在重定向时分配数据,请将其放入路径中,如上所示。