Birden fazla eylem talep eşleşen bulundu: webapi
2 "" yöntemleri . Almak için çalıştığımda bu hatayı almaya devam ediyorum
Birden fazla eylem talep eşleşen bulundu: webapi
Bu konuda diğer benzer sorulara bakarak çalışıyorum yığında ama anlamıyorum.
2 farklı isimler ve "HttpGet" özniteliği . kullanıyorum
[HttpGet]
public HttpResponseMessage Summary(MyVm vm)
{
rturn null;
}
[HttpGet]
public HttpResponseMessage FullDetails()
{
return null;
}
CEVAP
Yol haritanız muhtemelen bu gibi bir şey:
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional });
Ama aynı http yöntemi ile birden fazla eylem için çok gibi: rota üzerinden daha fazla bilgi ile webapi sağlamak gerekir
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional });
Bu routeTemplate şimdi bir eylem içerir dikkat edin. Çok daha fazla bilgi burada: http://www.asp.net/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api
Güncelleme:
Anladım Tamam, şimdi buradan sonra ne şuna bir bakalım:
Belki de eylem url parametresi gerekmez ve başka bir şekilde sonra bunun içeriğini açıklamalıdır. Bu yöntem aynı varlık veri dönüyor diyorsunuz ki o zamandan beri sadece parametreleri sizin için tarif yapalım.
Örneğin iki yöntem haline olabilir:
public HttpResponseMessage Get()
{
return null;
}
public HttpResponseMessage Get(MyVm vm)
{
return null;
}
Ne tür veriler MyVm nesnesinde geçirmeden? Eğer URİ ile sadece değişkenleri geçmek mümkün iseniz, bu rota gidiş öneririm. Aksi takdirde, ihtiyacınız olacak göndermek nesne vücudun isteği ve bu olmadığını gayet HTTP seni ne zaman yapıyor (çalışıyor olsa da, sadece [FromBody] önünde olan MyVm).
Umarım bu eylem adı hatta [HttpGet] özniteliği kullanmadan tek bir kontrol yöntemleri birden fazla ALMAK zorunda olduğunu göstermektedir.
Neden aynı ASP.NET MVC eylem için aynı...
Birden fazla rol denetleyicisi eylem e...
Birden fazla şifreleme anahtarları far...
Farklı kök klasörleri birden fazla yer...
ES 2.0 Birden fazla Program veya Birde...