[英]Set default controller in MVC4
如何在MVC4中設置默認控制器?
我已經嘗試將以下代碼添加到Global.ascx但它說“只有賦值,調用,遞增,遞減和新對象表達式可以用作語句”,似乎找不到“路由”,我把它放在錯誤的地方?
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index",
id = UrlParameter.Optional }
);
以下是截圖:
看一下App_Start / RouteConfig.cs文件。 您可以在此處以您希望的方式配置路由。
在那里,你會發現類似於這樣的代碼:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
您需要將此代碼放在RouteConfig.cs
下的App_Start
。
建議使用RouteConfig
的答案是正確的,但有點誤導。 RouteConfig
沒有什么神奇之處; 它只是一個按照慣例創建,命名和定位的類。
重要的部分是您通常傳遞給RouteConfig
: RouteTable.Routes
路徑表可從ASP.Net應用程序中的任何位置獲得。 例如,您可以說:
protected void Application_Start()
{
RouteTable.Routes.MapRoute( "myroute", "apples", new { controller = "Foo", action = "Bar" } );
}
它會工作得很好。 當然,您應該只在啟動時初始化路由並遵循RouteConfig
的約定以保持一致性。
但值得知道它為什么會起作用。
請在RouteConfig.cs文件中更改它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.