У меня возникли проблемы с моим MVC МаршрутыMVC маршрутизации: «Идентификаторы Несколько действий
Я пытаюсь добраться до следующей ссылке ...». HTTP: // локальный/апи/Страны "
я определил следующие маршруты в следующем порядке ...
RouteTable.Routes.MapHttpRoute(
name: "Continents",
routeTemplate: "api/countries/Continents",
defaults: new { controller = "countries", Action="Continents" }
);
RouteTable.Routes.MapHttpRoute(
name: "CountryRegions",
routeTemplate: "api/countries/Regions",
defaults: new { controller = "countries", Action = "CountryRegions" }
);
RouteTable.Routes.MapHttpRoute(
name: "CountryByCodeApi",
routeTemplate: "api/{controller}/{countryCode}",
defaults: new { controller="countries", countryCode = System.Web.Http.RouteParameter.Optional }
);
Всякий раз, когда я иду к нужному URL я получаю сообщение об ошибке "были найдены несколько действий, которые соответствуют запросу ". Это имело бы смысл, если бы третий сегмент свойства routeTemplate был необязательным, но я понял, что НЕ прилагая его в фигурных скобках, чтобы он сделал нужный сегмент в целевом URL. Очевидно, что «http: // localhost/api/countries» не включает «Континенты» или «Регионы», поэтому почему они будут идентифицированы как соответствующие запросу.
Я знаю. Эти маршруты SEEM как достаточно простая вещь, но когда вы приступаете к ней, это загадочно, как RegEx!
Любые мысли?
Спасибо, сэр! Это действительно проблема! –