我有两个控制器controllerOne在AreaOne区域下定义。我需要将controllerOne中定义的一个操作重新路由到controller2中定义的操作。我尝试了属性路由,但它无法正常工作。我目前的代码如下:
Controller One中的操作
public class ControllerOne
{ public ActionResult CustomerSearch()
{
return View("Search", model);
}
}
控制器二中的操作
[Route("AreaOne/ControllerOne/CustomerSearch")]
public class ControllerTwo
{ public ActionResult CustomCustomerSearch()
{
return View("Search", model);
}
}
我怎样才能做到这一点。?
答案 0 :(得分:2)
在RouteConfig.cs中,您可以使用routes.MapRoute将您的网址与任何控制器&你的项目中的行动。
routes.MapRoute(
name: "OverrideCustomerSearch",
url: "AreaOne/ControllerOne/CustomerSearch",
defaults: new { controller = "Two", action = "CustomCustomerSearch" }
);