我已经找到了几个答案,但没有找到问题的答案。
我的ajax请求
$.ajax({
url: "api/Company/GetQuarters/" + STARTQ+ '/' + CURRQ,
type: "GET",
...
});
我的api
[HttpGet]
public HttpResponseMessage GetQuarters(int start,int end)
{
...
}
路由
routes.MapHttpRoute(
"GetQuarters",
"Company/GetQuarters/{start}/{end}",
defaults: new { start = RouteParameter.Optional, end = RouteParameter.Optional });
我一直收到错误消息
错误消息
在控制器“公司”上找不到与之匹配的操作 请求。
我该如何解决?
编辑:项目结构是Test-> API-> CompanyAPI.cs;性能测试 - > Global.asax中 在Global.asax
void RegisterRoutes(RouteCollection routes)
{
....
routes.MapHttpRoute(
"API",
"api/{controller}/{action}/{id}/",
defaults:new { id = RouteParameter.Optional, Action="GET, POST" });
routes.MapHttpRoute(
"GetQuarters",
"Company/GetQuarters/{start}/{end}",
defaults: new { start = RouteParameter.Optional, end=RouteParameter.Optional });
....
}
控制器:
public class CompanyController : ApiController
{
[HttpGet]
public HttpResponseMessage GetQuarters(int start,int end)
{
...
}
}
答案 0 :(得分:0)
我怀疑你的 GetQuarters 路线注册并不是以" api /"开始,即
routes.MapHttpRoute(
"GetQuarters",
"api/Company/GetQuarters/{start}/{end}",
defaults: new { start = RouteParameter.Optional, end=RouteParameter.Optional });