The Unity Application Block (Unity) is a lightweight, extensible dependency injection container for .NET with support for interception.
The Unity Application Block (Unity) is a lightweight, extensible dependency injection container for .NET. It also supports interception.
Unity targets both .NET CLR and Silverlight.
Installing Unity can most easily be done using its NuGet package:
Install-Package Unity
More information at:
Hello world in 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.Write("Hello World!");
}
}
using (var container = new UnityContainer()) {
container.RegisterType<IMessageWriter, ConsoleWriter>();
var helloWorldService = container.Resolve<HelloWorldService>();
helloWorldService.Go();
}