У меня есть рабочее приложение, которое использует Castle Windsor. Виндзор регистрирует компоненты на основе файлов конфигурации, которые есть в моем проекте. Теперь мне нужно перенести регистрацию из файла .config в код. Я сделал это, но я получаю ошибку «Компонент для поддержки сервиса ... не найден». Моя проблема в том, что когда я отлаживаю приложение при запуске, я регистрирую все компоненты, но все равно получаю ошибку. У меня есть две библиотеки классов, в которых находятся компоненты. В основном проекте я ссылаюсь на эти библиотеки и регистрирую компоненты. Это моя реализация:
public class IocContainer
{
private static IWindsorContainer _container;
private static void RegisterInjector(WindsorContainer container)
{
container.Register(
Component.For<IWindsorContainer>()
.Instance(container));
}
public static void Setup()
{
var container = new WindsorContainer();
container.Install(FromAssembly.This());
RegisterInjector(container);
// _container = new WindsorContainer().Install(FromAssembly.This());
}
}
public class WindsoreInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(Component.For<Interface>().ImplementedBy<Implementation>());
}
}
protected void Application_Start(object sender, EventArgs e)
{
IocContainer.Setup();
}
Может кто-нибудь помочь?