0
我有一個名爲MVC4 Web的API - 路由映射幫助需要
產品 和我在這三個動作
- 產品控制器:接受一個int返回一個模型(類)對象
- 類別:需要一個字符串返回模型(類)對象數組
- 所有:沒有參數返回模型(類)對象的陣列
我試圖是下面的映射
產品 - > API /產品/產品/ 1
類別 - > api/product/category/sauces
所有 - > API /產品/所有
爲行動的名稱支持URL結構,所以我正在努力工作是
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
一切的一般途徑,但我得到當我使用下面的錯誤此http://localhost:2271/api/products/category/2
URL
<Error>
<Message>
No HTTP resource was found that matches the request URI 'http://localhost:2271/api/products/category/2'.
</Message>
<MessageDetail>
No action was found on the controller 'Products' that matches the request.
</MessageDetail>
</Error>
,另一方面這個URL api/products/category/?cat=abc
& api/products/category?cat=abc
正在工作...... [貓是我的接收參數名稱]
幫助!!!
嘿感謝您的答案,請您具體說明它如何不保持REST風格,我是REST API的新手。 – Moon 2013-04-09 06:19:32
很高興能夠提供幫助。我認爲[一篇寫得很好的文章的鏈接更好](http://en.wikipedia.org/wiki/Restful#RESTful_web_APIs)。這裏提到了RPC。還有其他文件可以更好地解釋它,但我必須Google它們:) – 2013-04-09 06:24:46