Я починаю використовувати проект Web API MVC4, маю контролер з декількома HttpPost
методами. Контролер виглядає наступним чином:
Контролер
public class VTRoutingController : ApiController
{
[HttpPost]
public MyResult Route(MyRequestTemplate routingRequestTemplate)
{
return null;
}
[HttpPost]
public MyResult TSPRoute(MyRequestTemplate routingRequestTemplate)
{
return null;
}
}
Тут MyRequestTemplate
представлений клас шаблонів, відповідальний за обробку Json, що надходить через запит.
Помилка:
Коли я роблю запит за допомогою Fiddler http://localhost:52370/api/VTRouting/TSPRoute
або http://localhost:52370/api/VTRouting/Route
отримую помилку:
Було знайдено кілька дій, які відповідають запиту
Якщо я видаляю один із описаних вище способів, він справно працює.
Global.asax
Я спробував змінити таблицю маршрутизації за замовчуванням global.asax
, але я все ще отримую помилку, я думаю, що у мене проблеми з визначенням маршрутів у global.asax. Ось що я роблю в Global.asax.
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapHttpRoute(
name: "MyTSPRoute",
routeTemplate: "api/VTRouting/TSPRoute",
defaults: new { }
);
routes.MapHttpRoute(
name: "MyRoute",
routeTemplate: "api/VTRouting/Route",
defaults: new { action="Route" }
);
}
Я роблю запит у Fiddler за допомогою POST, передаючи json в RequestBody для MyRequestTemplate.