我的RouteConfig
中有以下代码:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
//routes.MapMvcAttributeRoutes();
routes.MapRoute(
name: "Transfer",
url: "Transfer/{controller}/{action}/{id}",
defaults: new { id = UrlParameter.Optional });
routes.MapRoute(
"Director",
"{*parameters}",
new { controller = "Home", action = "Index"}
);
}
一切都运行良好,但每当我取消注释routes.MapMvcAttributeRoutes();
行时,只有属性路由有效,另一个则不能。这是我的控制器:
public class HomeController : Controller
{
[Route(""), Route("Home")]
public ActionResult Index()
{
return this.View();
}
[Route("ContactUs")]
public ActionResult ContactUs()
{
return this.View();
}
[Route("PrivacyPolicy")]
public ActionResult PrivacyPolicy()
{
return this.View();
}
[Route("TermsOfUse")]
public ActionResult TermsOfUse()
{
return this.View();
}
}
这是什么原因?它似乎首先发生在我身上。我之前已多次这样做但这个问题从未发生过。
答案 0 :(得分:0)
你在这里做错了:
尝试这种方式:
[Route("Home")]
public ActionResult Index()
{
return this.View();
}