[英]Routes in ASP.NET MVC
我正在嘗試在MVC項目中路由鏈接。
我嘗試了兩種方法:
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 }
);
//method1
// routes.MapPageRoute("SchoolPage", "School", "~/home", false);
//method2
routes.MapRoute(name: "SchoolPage",url: "School", defaults: new { controller = "Home", action = "Index" });
}
對於這兩種方法,我都會收到錯誤:
HTTP404。您正在尋找的資源(或其依賴項之一)可能已被刪除,名稱更改或暫時不可用。 請查看以下網址,並確保其拼寫正確。
您需要先指定自定義路由。 默認路由沒有限制,因此它將與任何URL匹配。 當您通過http://example.org/School發出請求時,ASP.NET MVC將使用默認路由查找名為SchoolController的控制器。 您必須先將其與SchoolPage路由匹配,方法是將其放在默認路由之前。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(name: "SchoolPage",url: "School", defaults: new { controller = "Home", action = "Index" });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.