Есть 3 атрибутам МаршрутыТекущий запрос неоднозначен MVC Атрибут Route
[Route("{foo}_{bar}_{fee}_o_p")]
ActionResult SelectFee
[Route("{foo}_{bar}_{fee}_{fii}_o_p")]
ActionResult SelectFii
[Route("{foo}_{bar}_{fee}_{fii}_{fum}_o_p")]
ActionResult SelectFum
Первая 2 работы, как и ожидалось. Но последний имеет неоднозначную ошибку отражения.
Это также странно, если бы я должен был переместить 2 из них к другой области/контроллеру неоднозначной ошибка возникает для них, а Если я обновлю в [Route("Select/{foo}_{bar}_{fee}_{fii}_{fum}_o_p")]
ActionResult SelectFum
это работает ...
Маршруты
public ActionResult SelectFee(string foo, string bar, string fee)
public ActionResult SelectFii(string foo, string bar, string fee, string fii)
public ActionResult SelectFum(string foo, string bar, string fee, string fii, string fum)
Точные ошибки от Elmah
System.Reflection.AmbiguousMatchException: текущий запрос неоднозначен между следующими способами:
System.Web.Mvc.ActionResult SelectedFee (System.String, System.String, System.String) типа RexProject.Controllers.ShopController
System.Web.Mvc.ActionResult SelectFii (System.String, System.String, System.String, System.String) типа RexProject.Controllers.ShopController
System.Web.Mvc.ActionResult SelectFum (System.String, System. String, System.String, System.String, System.String) по типу RexProject.Controllers.ShopController
Любой вход будет полезен! Спасибо!
Solution (или работа вокруг)
Удалены маршрутизацией атрибутов, и поместил их внутри RegisterRoutes метода в RouteConfig, Longest Во-первых, и они работают, как ожидалось.
Все три маршрута идентичны - они указывают, что URL-адрес содержит только один сегмент. –
показать свою полную подпись действия. Если последний параметр недействителен, то это причина, по которой вы получаете эту ошибку –