有些奇怪的事情正在发生......我真的不明白为什么....只有将id参数类型从int更改为object,这篇文章才能正常工作。
我知道最好的方法是在url中设置值...但是我试图避免这件事...我的偏好是将值作为json发布。 public IHttpActionResult Gettest(int id) = 不起作用!
{"Message":"No HTTP resource was found that matches the request URI 'http://localhost:23052/api/testAPI/Gettest'.","MessageDetail":"No action was found on the controller 'testAPI' that matches the request."} public IHttpActionResult Gettest(object id) = 它可以工作
这个运行得很好
我做错了什么?....我试图在服务器/客户端上将参数名称从"id"更改为"x",但结果相同。
我知道最好的方法是在url中设置值...但是我试图避免这件事...我的偏好是将值作为json发布。 public IHttpActionResult Gettest(int id) = 不起作用!
{"Message":"No HTTP resource was found that matches the request URI 'http://localhost:23052/api/testAPI/Gettest'.","MessageDetail":"No action was found on the controller 'testAPI' that matches the request."} public IHttpActionResult Gettest(object id) = 它可以工作
这个运行得很好
我做错了什么?....我试图在服务器/客户端上将参数名称从"id"更改为"x",但结果相同。
config.Routes.MapHttpRoute("DefaultActionApi", "api/{controller}/{action}/{id}", new { id = RouteParameter.Optional });
WebApiConfig.cs
[HttpPost]
public IHttpActionResult Gettest(int id)
{
test test = db.tests.Find(id);
if (test == null)
{
return NotFound();
}
return Ok(test);
}
testAPIController.cs
$http.post("/api/testAPI/Gettest", id)
.success(function (result) {
$scope.test = result;
}).error(function (result) {
console.log(result);
});
Angular 发布
int?
,会怎样呢? - juharr