Я разрабатываю приложение ASP.NET Web Api 2.2 с .NET Framework 4.5.1 и С#.
У меня есть контроллер с этим методом:
public HttpResponseMessage Get(
string productCode,
byte codeLevel,
string productionOrderName,
string batchName,
string lineName,
int quantity)
{
И вот как я настроил его маршрут на WebApiConfig
:
config.Routes.MapHttpRoute(
name: "ExternalCodesActionApi",
routeTemplate: "api/ExternalCodes/{action}/{productCode}/{codeLevel}/{productionOrderName}/{batchName}/{lineName}/{quantity}",
defaults: new { controller = "ExternalCodes" });
Но теперь у меня есть другой метод на том же контроллере (ExternalCodesController
):
[HttpPut]
public HttpResponseMessage SetCodesAsUsed(List<string> codes)
{
Но с этим маршрутом, когда я использую этот метод (http://myHost:53827/api/ExternalCodes/SetCodesAsUsed), я получаю InvalidOperationException
с сообщением:
"Обнаружено несколько действий, соответствующих запросу:
SetCodesAsUsed в типе MyProject.Web.API.Controllers.ExternalCodesController
SetCodesAsUnUsed в типе MyProject.Web.API.Controllers.ExternalCodesController",
В том же ExternalCodesController
есть еще один метод:
[HttpPut]
public HttpResponseMessage SetCodesAsUnUsed(List<string> codes)
{
Что я делаю не так?
Методы имеют разные названия.