Duplicar posibles:
How do I register a controller that has been created in an AREAcontroladores divididos por áreas
tengo la pregunta - ¿es posible hacer lo siguiente?
tengo tres áreas:
_Default
SiteOne
SiteTwo
Dentro de cada área tengo un ApiController con el mismo nombre, pero en diferentes espacios de nombres de curso:
MvcAppliaction.Areas._Default.Controllers.ValuesController
MvcAppliaction.Areas.SiteOne.Controllers.ValuesController
MvcAppliaction.Areas.SiteTwo.Controllers.ValuesController
que también tienen un valor de la corriente (que me gustaría usar) Área en la configuración.
me gustaría Mapa de usuario al controlador en el área adecuado (que puedo encontrar en la configuración) si entra en el navegador:
/api/values
Por ejemplo, si el área actual en el archivo de configuración es SiteOne entonces esta solicitud debe asignarse al controlador MvcAppliaction.Areas.SiteOne.Controllers.ValuesController, pero si cambio el Área actual en el archivo de configuración a SiteTwo of _Default, debe asignarse al controlador correcto.
PS. Con controlador MVC es fácil, sólo tiene que fijar su ruta:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "MvcApplication.Web.Areas." + SiteName + ".Controllers") }
);
Gracias. Pensé que hay otra manera. Por lo tanto, implementaré la fábrica de controladores HTTP. – Malkov
No hay problema de estar contento de ayudar – dmportella