尝试使用“routes.MapRoute”来缩短路径,但是我收到错误“无法找到资源”。

时间:2012-08-01 01:23:16

标签: asp.net-mvc resources asp.net-mvc-routing

现在我正在使用以下路线:

http://localhost/Ancora/MiniSites/Index/Lilly

我正在努力缩短为:

http://LocalHost/Ancora/Lilly

使用Global.asax.cs中的下一个代码:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapRoute(
        "MiniSite",
        "{code}",
        new { controller = "MiniSites", action = "Index", code = "" },
    );
}

但我收到错误:

“无法找到资源。”

请帮忙。

1 个答案:

答案 0 :(得分:0)

如果// localhost / Ancora / MiniSites / Index / Lilly正在运行,那么它必须在控制器Ancora中调用动作方法MiniSites并将其作为参数传递给Index和Lilly。如果您想// LocalHost / Ancora / Lilly映射到第一个URL,请尝试以下代码:

routes.MapRoute(
    "MiniSite",
    "{controler}/{param2}",
    new { controller = "Ancora", action = "MiniSites", param1 = "Index", param2 = "Lilly" }
);

其中param1和param2是Ancora Controller中动作方法MiniSites的参数名称。