我有一個大約9個控制器的項目。現在在項目結束時URL更改。如何處理最好的這種情況 - 重命名控制器似乎只是太麻煩......我需要改變servercode和JavaScript各個環節重命名控制器asp.net mvc
回答
你的問題可以通過改變現有路線來解決。在您的global.asax中,你會發現這樣的
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
,一個URL「/控制器/動作/ ID」映射到控制器,操作和ID的代碼片段。您可以提供這樣的路由
routes.MapRoute(
"RefactoredRoute", // Route name
"SomeChangedURLBase/{action}/{id}", // URL with parameters
new { controller = "Controller", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
將請求路由到/ SomeChangedURLBase ...由控制器處理。
請注意,這些路由應在默認路由之前註冊,以避免視圖中生成的鏈接指向默認路由並生成舊URL。
我實現了這一點後意識到一點:在我的瀏覽器內,我仍然看到舊的網址,如果我經常瀏覽應用程序,但我的新網址被接受。任何改變這種方式 - 以便顯示新的網址? – 2012-04-26 14:49:22
這可能是Route ordering/ActionLink構建中的問題。您可以使用RouteLink而不是ActionLink來生成鏈接。 – saintedlama 2012-04-26 14:57:00
如果您在頁面上使用ActionLink,並將它們指向控制器和操作,則它將使用新URL,前提是將其放在路由集合中的舊URL之前。 – 2014-11-19 15:45:54
你可以改變路線Global.asax中
只是改變了方法的RegisterRoutes
在這裏你可以找到更多的信息。
http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx
歡呼
- 1. 如何命名Asp.net Mvc控制器?
- 2. ASP.NET MVC中的重命名控制器方法
- 3. ASP.NET MVC:控制控制器/視圖的命名約定?
- 4. 重命名控制器
- 5. Asp.Net MVC後控制器未被命中
- 6. ASP.NET MVC控制器廠生命週期
- 7. ASP.NET MVC控制器生命週期
- 8. ASP.NET MVC命名空間重命名
- 9. ASP.Net MVC控制器
- 10. 在ASP.NET MVC控制器方法Ambigious名
- 11. ASP.NET MVC 4覆蓋控制器名稱
- 12. 保留的ASP.NET MVC控制器名稱?
- 13. 重命名/重構視圖控制器
- 14. MVC控制器在DLL命名空間
- 15. 重用ASP.NET MVC視圖和控制器
- 16. 重定向擅自控制器ASP.NET MVC
- 17. 控制器在asp.net中的重用mvc
- 18. ASP.NET MVC路由與控制器命名爲「PropertiesController」
- 19. 重命名ASP.NET MVC項目導致控制器錯誤的多種類型
- 20. 爲什麼ASP.NET MVC重命名以數字開頭的控制器?
- 21. Refector-重命名ASP.Net控件
- 22. 錨標籤重複控制器名稱asp.net MVC 4
- 23. 導軌仿人重命名控制器
- 24. 重命名塔架控制器
- 25. 更新重命名控制器
- 26. ASP.Net MVC控制器_layout
- 27. ASP.NET MVC - 組合控制器?
- 28. 在ASP.NET MVC控制器
- 29. 胖ASP.NET MVC控制器
- 30. ASP.NET MVC控制器設計
你也可以看看IIS URL重寫 – Chandermani 2012-04-24 14:28:45
ReSharper6是一個沒有工作.. – 2012-04-24 15:48:23
另外請注意:您可以在需要在URL中指定的操作使用破折號,在C#中方法的命名規則的蔑視(花我有一段時間要學習)。請參閱:http://stackoverflow.com/questions/30310/asp-net-mvc-how-do-i-enable-dashes-in-my-urls – Faust 2012-04-24 16:50:21