public class SomeApiInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Install(new NLogInstaller());
}
}
public class SomeInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(
Component.For<MyHttpClient>().LifestylePerWebRequest()
);
}
}
public class NLogInstaller : IWindsorInstaller
{
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.Register(Component.For<ILogger>().ImplementedBy<Logger>().LifestyleSingleton());
}
}
public class MyHttpClient : IMyHttpClient
{
// How this can be resolved using DI ? Similar way working for controller using NLogInstaller
private readonly Logger _logger = LogManager.GetCurrentClassLogger().SetConfiguration();
}