0

MVC3 で Web の URL をルーティングしているときに問題に直面しています。関数を次のようにオーバーライドします

 public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.MapPageRoute("GrpViewRoute", "Report/{ReportName}", "~/Views/Offer/{ReportName}.aspx");
        routes.MapRoute(
            "Default", // Route name
            "{language}/{controller}/{action}/{id}", // URL with parameters

            new { language = "en",  controller = "Home", action = "Index", id = UrlParameter.Optional }
        );
        //routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
    }

「言語/ホーム/インデックス」としてリクエストすると、これは正常に機能します。毎回言語を提供する必要があります。「ホーム/インデックス」としてサイトにアクセスできる解決策はありますか。デフォルトで言語を提供しない場合は、en.

4

1 に答える 1

0

はい、可能です:

routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters

            new { language = "en",  controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

これを現在の地図ルートの後に置きます。

于 2012-07-20T10:58:23.953 に答える