0
我的web應用程序出現了一個小問題。我爲我的應用程序使用C#MVC,並且爲我的URL創建了自定義格式,因爲我的應用程序將根據我在URL中收到的代碼連接到不同的數據庫。c#MVC自動更改URL格式
問題是,當我第一次吃午飯我的應用程序,網址改變了。 這裏有一個例子:
我自定義的格式是這樣的:
{代碼}/{文化}/{控制器}/{行動}/{ID}
我有這個從一開始網址:
這裏EFS意味着{代碼}和FR-CA的{文化}
,但一路走來,它成爲這個
我想它是這樣的:
這裏是我的routeConfig:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{code}/{culture}/{controller}/{action}/{id}",
//defaults: new { code = string.Empty,culture = string.Empty, controller = "Home", action = "RV", id = UrlParameter.Optional }
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute("Error", "{*url}", new { controller = "Error", action = "Error" });
}
}
如果你需要更多信息,只是問我:)
謝謝您的時間!
的事情是,代碼「EFS」可以是任何東西,所以我不希望把一個缺省值有 – alexandre
然後,不包括默認值。但是,如果沒有默認值,那麼您必須*總是*提供URL的部分。換句話說,將無法加載文檔根目錄('/')。然而,@ Shan的答案的主要觀點是,您需要更改默認路由以包含這些路由參數。如果你有一條不需要它們的路由,那麼MVC將總是使路由短路,並按照不需要它們的路由進行。 –