Mam akcje, które mają różne parametry typów.Web Api Wiele działań zostało znalezionych
public class MyController : ApiController
{
[HttpPost]
public UpdateFeatureResponse UpdateFeature(UpdateFeatureResuest reqResuest)
{
return new UpdateFeatureResponse { IsSuccess = true };
}
[HttpPost]
public DeleteFeatureResponse DeleteFeature(DeleteFeatureRequest request)
{
return new DeleteFeatureResponse{ IsSuccess = true };
}
}
A moje typy żądań są tak:
public class UpdateFeatureResuest
{
public int Id { get; set; }
public string Feature { get; set; }
}
public class UpdateFeatureResponse
{
public bool IsSuccess { get; set; }
}
public class DeleteFeatureRequest
{
public int Id { get; set; }
}
public class DeleteFeatureResponse
{
public bool IsSuccess { get; set; }
}
Trasa jest tutaj:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
Kiedy wysłać żądanie (http://localhost:52285/api/My/UpdateFeature
) poprzez Skrzypek zwraca HTTP/1.1 500 Internal Błąd serwera
Komunikat o błędzie i s:
{ "message": "Wystąpił błąd.", "exceptionMessage": "Wiele działań stwierdzono, że pasuje do żądania: \ r \ nUpdateFeature od typu WebGUI.Controllers.MyController \ r \ nDeleteFeature od typu WebGUI.Controllers.MyController „«exceptionType»:«System.InvalidOperationException»,«stackTrace»:” .....
Co URL nie używasz i co robi swój wygląd routingu jak? – DavidG