Я начинаю использовать проект MVC4 Web API, у меня есть контроллер с несколькими методами 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.