Trabajé un poco con StructureMap y logré inyectar en mi controlador (mediante inyección de constructor) un repositorio de tipo concreto para una interfaz.Inyectar en un proveedor de membresía personalizado con StructureMap
Ahora, necesito insertar un tipo de repositorio en mi proveedor de membresía personalizado. ¿Pero cómo? Mi proveedor de membresía personalizado se crea a través del Membership.Provider.ValidateUser
(por ejemplo).
Por controlador de E creado una clase como esta:
public class IocControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(
System.Web.Routing.RequestContext requestContext,
Type controllerType)
{
return (Controller)
ObjectFactory.GetInstance(controllerType);
}
}
y en Global.asax
, en Application_Start()
:
//...
ObjectFactory.Initialize(x =>
{
x.AddRegistry(new ArticleRegistry());
}
);
ControllerBuilder.Current.SetControllerFactory(
new IocControllerFactory());
//...
Pero, ¿cómo inyectar un tipo concreto en mi proveedor de suscripciones personalizado con StructureMap?
posible duplicado de [Inyección de propiedad en el proveedor de membresía personalizado utilizando Castle] (http://stackoverflow.com/questions/10174636/property-injection-in-custom-membership-provider-using-castle) – Steven