Poszukuję podstawowych przykładów/wyjaśnień Jedności. Ciężko mi zrozumieć tę koncepcję. Mam podstawowe zrozumienie wzoru Injection, ponieważ wydaje się, że Unity jest z nim ściśle związana. Doceniam każdą pomoc.Co to jest Microsoft Unity?
9
A
Odpowiedz
11
Unity jest jednym z several DI Containers for .NET. Może być używany do komponowania wykresów obiektów, gdy typy te są zgodne z Dependency Inversion Principle.
Najprostszym sposobem na to jest użycie Konstruktor wtrysku wzoru:
public class Foo : IFoo
{
private readonly IBar bar;
public Foo(IBar bar)
{
if (bar == null)
throw new ArgumentNullException("bar");
this.bar = bar;
}
// Use this.bar for something interesting in the class...
}
Teraz można skonfigurować jedność w aplikacji Composition Root:
container.RegisterType<IFoo, Foo>();
container.RegisterType<IBar, Bar>();
The jest Rejestracja faza Register Resolve Release pattern. W Resolve fazie container
będzie Auto-wire wykres obiektu bez dalszej konfiguracji:
var foo = container.Resolve<IFoo>();
to automatycznie działa, ponieważ statyczna struktura klas zaangażowanych zawiera wszystkie informacje pojemnik musi komponować obiektu wykres.
0
Sprawdź tutaj: Microsoft Unity 2.0 – April 2010
1
Aby dodać odpowiedź Marka (mam nadzieję, że nie przeszkadza), jeśli chcesz dowiedzieć się więcej o Dependency Injection, jest naprawdę dobra książka "Dependency Injection in .NET" napisana przez samego Marka. http://www.manning.com/seemann/ – Phill
@phill: proszę nie rób tego. Mark nienawidzi tego, gdy ludzie odnoszą się do jego książki :-) – Steven
:(Przepraszam, nie zrobię tego ponownie. – Phill