public static void Main()
var builder = new ContainerBuilder();
var container = builder.Build();
using (var lifetimeScope = container.BeginLifetimeScope(c => c.RegisterType<Settings1>().As<ISettings>()))
lifetimeScope.Resolve<ISettings>().Run();
using (var lifetimeScope = container.BeginLifetimeScope(c => c.RegisterType<Settings2>().As<ISettings>()))
lifetimeScope.Resolve<ISettings>().Run();
public interface ISettings
Console.WriteLine("Log");
public class Settings1 : ISettings
Console.WriteLine("Settings1");
public class Settings2 : ISettings
Console.WriteLine("Settings2");