在我的Global.asax文件中,我有以下內容;MVC:這個路由有什麼問題?
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Account", action = "LogOn", id = UrlParameter.Optional }); // Parameter defaults
routes.MapRoute(
"Contracts",
"Contract/{contractId}",
new { controller = "Contract", action = "Details" }
);
我想指定一個路徑Contract/10,其中10是contractId,它是我的ContractController中Detail方法的參數。 所以這個工作; http://localhost:1234/Contract/Details?contractId=10 但不是 http://localhost:1234/Contract/10
我在做什麼錯?
工作,謝謝。這確實意味着「詳細信息」必須位於路徑名中。我對自己的工作很滿意,但對於我自己的教育,我想我想知道如何從路徑和工作中排除「細節」。 – arame3333 2010-08-17 15:48:37
對於教育,然後;)如果你想從路徑中排除細節,你可以使它成爲Contract/{contractId}(你以前的方式),但保持默認action =「details」(以前的方式)。這是令你失望的命令 – BritishDeveloper 2010-08-17 16:04:11