Следующая ошибка, с которой я столкнулся:
Обнаружено несколько типов, соответствующих контроллеру с именем 'test'.Это может произойти, если маршрут, обслуживающий этот запрос ('JIB / api / {controller} / {action}'), обнаружил несколько контроллеров, определенных с одним и тем же именем, но с разными пространствами имен, что не поддерживается.Запрос на «тест» обнаружил следующие подходящие контроллеры: WebApplication2.Areas.JIB.Controllers.TestController WebApplication2.Areas.JCB.Controllers.TestController System.InvalidOperationException в System.Web.Http.Dispatcher.DefaultHttpControlessControllerPortorSeclerlerSelector.в System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext ()
[Route("JIB/api/Test/test")]
[HttpGet]
public IHttpActionResult Test()
{
return Ok("JIBs");
}
--------------
[Route("JCB/api/Test/test")]
[HttpGet]
public IHttpActionResult Test()
{
return Ok("JCB");
}
---------------
Global.asax
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
protected void Application_Start()
{
JCBAreaRegistration.RegisterAllAreas();
// GlobalConfiguration.Configure(WebApiConfig.Register);
RegisterRoutes(RouteTable.Routes);
}
JCBAreaReges context.Routes.MapHttpRoute (имя: "JCBApiAction", routeTemplate / "JB")/ {controller} / {action} ");
context.Routes.MapHttpRoute(
name: "JCBApi",
routeTemplate: "JCB/api/{controller}"
);
//****************=======Default Route=========*******************
context.MapRoute(
"JCB_dashboard",
"JCB/{controller}/{action}/{id}",
new { Controller = "Dashboard", action = "Index", id = UrlParameter.Optional }
);
context.MapRoute(
"JCB_default",
"JCB/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);
JIBAreaReges context.Routes.MapHttpRoute (имя:" JIBApiAction ", routeTemplate:" JIB / api / {controller} / {action}");
context.Routes.MapHttpRoute(
name: "JIBApi",
routeTemplate: "JIB/api/{controller}"
);
//****************=======Default Route=========*******************
context.MapRoute(
"JIB_dashboard",
"JIB/{controller}/{action}/{id}",
new { Controller = "Dashboard", action = "Index", id = UrlParameter.Optional }
);
context.MapRoute(
"JIB_default",
"JIB/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);