SmallInjectorDemo/Program.cs
2018-08-12 13:44:42 +02:00

32 lines
1.2 KiB
C#

using System;
namespace SmallInjectorDemo
{
internal static class Program
{
private static void Main()
{
Console.WriteLine("Small dependency injection example.");
Console.WriteLine();
var injector = new SmallInjector();
Console.WriteLine("Register " + nameof(ServiceOne));
injector.RegisterType<ServiceOne, IServiceOne>(true);
Console.WriteLine("Register " + nameof(ServiceTwo));
injector.RegisterType<ServiceTwo, IServiceTwo>(true);
Console.WriteLine("Register " + nameof(UsefulClass));
injector.RegisterType<UsefulClass>(false);
Console.WriteLine();
Console.WriteLine("Resolve class instances.");
var useful1 = injector.Resolve<UsefulClass>();
var useful2 = injector.Resolve<UsefulClass>();
var useful3 = injector.Resolve<UsefulClass>();
Console.WriteLine();
Console.WriteLine("Run test methods.");
useful1.TestTheServices();
useful2.TestTheServices();
useful3.TestTheServices();
Console.ReadLine();
}
}
}