2014-12-23 92 views
0

我是MVC的新手,很少與路由混淆。我已經定義2個路由作爲 asp.net mvc路由routelink創建路由首先在application.cs中定義

routes.MapRoute(
    "testingController1", 
    " /mobile/{controller}/{action}/{key}", 
    defaults: new { controller = "Controller1", action = "Home" }); 

routes.MapRoute(
    "testingController2", 
    "/desktop/{controller}/{action}/{key}", 
    defaults: new { controller = " Controller2", action = "Home" }); 

如所看到的上述我有2個路由。現在,在Controller =「Controller2」,Action =「Products」中使用「testingController2」的路由鏈接時,網址被重定向爲html/mobile/Controller2/Products。如何解決上述問題。我希望它被渲染爲/ desktop而不是Mobile。

回答

0

您已經實現的方式,來測試你將不得不調用像網址: /桌面/ testingController2 /產品/

另一種方法,你也可以使用哪些方面的概念。請看link,看看如何註冊區域的步驟13和14。

除非有特殊的要求,做你做了什麼,你可以只保留默認路徑:

routes.MapRoute(
     name: "Default", 
     url: "{controller}/{action}/{id}", 
     defaults: new { controller = "Home", 
     action = "Index", id = UrlParameter.Optional } 
    ); 

,然後創建一個名爲MobileController和另一個名爲desktopController控制器。 然後通過添加名爲Products的動作,您可以使用以下鏈接: www.yoursite.com/mobile/products www.yoursite.com/desktop/products