internal class Program
{
static void Main(string[] args)
{
ContainerBuilder containerBuilder = new ContainerBuilder();
containerBuilder.RegisterGeneric(typeof(List<>)).As(typeof(IList<>));
containerBuilder.RegisterType<Microphone>().As<IMicrophone>();
IContainer container = containerBuilder.Build();
IList<IMicrophone> microphonelist = container.Resolve<IList<IMicrophone>>();
foreach (var item in microphonelist)
{
item.Record();
}
}
}
internal class Microphone : IMicrophone
{
public void Record()
{
Console.WriteLine("Recording...");
}
}
internal interface IMicrophone
{
void Record();
}