Описание тега unity-container

Блок приложения Unity (т.е. Unity) - это легкий расширяемый контейнер для внедрения зависимостей для.NET с поддержкой перехвата. _Не_ используйте этот тег для ссылки на игровой движок Unity.

Блок приложения Unity (т.е. контейнер Unity) - это легкий расширяемый контейнер для внедрения зависимостей для.NET. Он также поддерживает перехват.

Unity нацелен как на.NET CLR, так и на Silverlight.

Установить Unity проще всего с помощью пакета NuGet:

Install-Package Unity

Дополнительная информация:

Привет, мир на C#

interface IMessageWriter 
{
    void WriteMessage(string message);
}

class ConsoleWriter : IMessageWriter 
{
    public void WriteMessage(string message) 
    { 
        Console.WriteLine(message); 
    }
}

class HelloWorldService 
{
    private readonly IMessageWriter _writer;

    public HelloWorldService(IMessageWriter writer) 
    {
       _writer = writer;
    }

    public void Go() 
    {
       _writer.WriteMessage("Hello World!");
    }
}

using (var container = new UnityContainer()) 
{        
    container.RegisterType<IMessageWriter, ConsoleWriter>();

    var helloWorldService = container.Resolve<HelloWorldService>();

    helloWorldService.Go();    
}