3
我正在實現一些東西,我希望在更傳統的MVC實現旁邊放置web api。在不同命名空間中使用重複的控制器名稱的路徑模板
的結構是這樣的:
+ Controllers
+ Web
- Product.cs
+ Api
- Product.cs
在我的代碼,我想路由通過/api
進來的Api
命名空間的所有請求,以及其他一切的Web
命名空間,像:
// Want to indicate that these should all choose the the Api namespace
routes.MapRoute(
name: "api_route",
template: "api/{controller}/{action}/{id?}");
// Indicate that these should all choose the from the Web namespace.
routes.MapRoute(
name: "default_route",
template: "{controller}/{action}/{id?}");
據我所見,沒有慣用的方式來指示哪個命名空間可供選擇。有一個更好的方法嗎?或者我需要手動指定每個控制器的路線?
編輯: 因爲它似乎這可能是一個有爭議的問題,如果使用Razor視圖。無論如何,我會留下來看看是否有人有答案。