我可能只是在這個時間太長凝視,或也許我只是誤解背後的WebAPI的想法,但我想看看是否有辦法使它所以路由表來響應到CUSTOMIZED行動名稱。例如,我想要:的.NET Web API路由問題
// -> /api/student/studentRecord?studentId=1
[HttpGet]
public Student StudentRecord(int studentId){
//Do Something and return the Student Record
}
// -> /api/student/newStudent?name=john
[HttpPost]
public int NewStudent(String name){
//Do whatever and return the new id
}
我不確定我在這裏錯過了什麼,或者它是否可以完成。我一直精練的互聯網絡一會,似乎並不能推測出來。
是的WebAPI的點只是有一個單一的PUT,POST,GET等在每個控制器,或者我可以做我想做的事情?
我打得四處路由,但我想我讓事情變得更糟!每次我嘗試調用某個東西時,我都會調用相同的方法。
這是我在路由配置文件:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
你如何託管您的網絡API?用MVC4?看起來你是爲你的MVC控制器配置路由,因爲Wep.API路由看起來像是'config.Routes.MapHttpRoute'(' – nemesv
更新了帖子,我把錯誤的路由配置了起來,今天做了太多的事情.. – SlackerCoder
如果你把這個'config.Routes.MapHttpRoute( 名稱: 「DefaultApiWithAction」, routeTemplate: 「API/{控制器}/{行動}/{ID}」, 默認:新{ID = RouteParameter.Optional} ) ; ** **之前的「DefaultApi」它理論上應該起作用。 – nemesv