Я использую ASP.NET MVC 5
У меня проблемы с маршрутами и параметрами.
У меня есть эта функция в моем ControllerBase
[HttpGet]
[Route("~/obtenerAngulos/{Conex_AT}/{Conex_BT}")]
public JsonResult obtenerAngulos(string Conex_AT, string Conex_BT)
{
return Json(
new
{
AT = Conex_AT,
BT = Conex_BT
}
, JsonRequestBehavior.AllowGet);
}
И у меня возникают проблемы с получением второго параметра Conex_BT
Url.Action()
возвращает этот маршрут http://localhost:53645/Base/obtenerAngulos?Conex_AT=Y&Conex_BT=y
проблема, это Conex_BT
всегда ноль
Затем я пытаюсь работать с маршрутом и добавляю для него аннотацию данных [Route("~/obtenerAngulos/{Conex_AT}/{Conex_BT}")]
, но с Url.Action()
я продолжаю получать тот же маршрут, что и раньше.
Даже если я пытаюсь написать его вручную, например http://localhost:53645/Base/obtenerAngulos/AA/BB
Я получаю
Ошибка HTTP 404.0 - Не найдено
Я упоминаю обе проблемы, потому что я почти уверен, что они связаны.
Вот маршрутконфигурация
RouteConfig.cs
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}