Привет!!
Кто то юзал Castle Windsor для инъекций интерфейсов в конструкторы контроллеров в .NET MVC 2 ?
Короче кто юзал, я переопределяю фабрику в Application_Start:
ControllerBuilder.
Current.
SetControllerFactory(new WindsorControllerFactory
());
Вот её код:
public class WindsorControllerFactory: DefaultControllerFactory
{
WindsorContainer container;
public WindsorControllerFactory
()
{
// Create new container instance from web.config
container =
new WindsorContainer
(new XmlInterpreter
(new ConfigResource
("castle")));
// Set all controller types as Transient
var controllerTypes = from t
in Assembly.
GetExecutingAssembly().
GetTypes()
where
typeof(IController
).
IsAssignableFrom(t
)
select t;
foreach (Type t
in controllerTypes
)
{
container.
AddComponentLifeStyle(t.
FullName, t, LifestyleType.
Transient);
}
}
protected IController GetControllerInstance
(Type controllerType
)
{
return (IController
)container.
Resolve(controllerType
);
}
}
Но блин пишет сука мне No parameterless constructor defined for this object. Даже не доходит в GetControllerInstance фабрики. Я чё то не вдуплю, толи это контейнер не пашет, толи хуй его знает чё блядь надо. Мож кто шарит?