我有一個ASP.NET MVC 4應用程序。我想使用新的Web API功能進行學習。我想學習如何公開相同的端點,但提供不同的版本。換句話說,我要揭露端點如下所示:版本控制ASP.NET MVC中的Web API操作4
http://mysite/1.0/Products/1
http://mysite/2.0/Products/1
在試圖做到這一點,我默認的「控制器」目錄中增加了一個「API」目錄。在「Api」目錄中,我有兩個其他目錄:「Version1-0」和「Version2-0」。每個目錄都有一個名爲「ProductsController」的ApiController。
我試圖在我的WebApiConfig.cs文件中添加下列路線定義,露出端點:
config.Routes.MapHttpRoute(
name: "1-0Api",
routeTemplate: "api/1.0/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
不幸的是,我無法弄清楚如何公開通過我上面列出的網址行動。我究竟做錯了什麼?謝謝!
目前,我只有1個控制器(ProductsV1Controller),並且我無法訪問該端點。我究竟做錯了什麼?項目沒有其他改變。我從字面上開始了一個新的ASP.NET MVC 4項目,並希望添加一個版本控制器。 –
有幾件事可能是錯的。你的控制器可能不是公共類,控制器可能不是從ApiController派生的,或其他的。你從本地機器上的服務器迴應什麼? –
我的控制器是公開課。控制器確實從ApiContoller派生。在我的本地機器上,我收到了404。這是最奇怪的事情。 –