2013-08-07 23 views
5

Nie mogę znaleźć żadnych dobrych przykładów na MEF2.MEF2 Jak działają katalogi? Wygląda na to, że został usunięty

Chciałbym utworzyć katalog wtyczek i użyć katalogu katalogu do załadowania importu.

Chciałbym:

  1. Brak atrybutów. Korzystanie z Konstruktora konfiguracji z konwencjami
  2. Katalog wtyczek
  3. Po dodaniu biblioteki DLL aplikacja wie o dostępności nowego eksportu.

Czy mogę użyć do tego celu Castle Windsor?

+0

Co próbowaliście? Jak myślisz, dlaczego katalog DirectoryCatalog został usunięty? Co masz na myśli mówiąc "Bez atrybutów"? Co masz na myśli przez "Korzystanie z Konstruktora konfiguracji"? – Matt

Odpowiedz

1

Model konwencji wprowadzony przy użyciu MEF2 jest alternatywą dla przypisanego modelu. Oba modele mogą współistnieć w aplikacji. Katalogi mają nowy constuctor, który przyjmuje argument ReflectionContext. RegisrationBuilder pochodzi z tej klasy. Tworzysz więc RegistryBuilder, konfigurujesz go, a następnie tworzysz jeden lub więcej katalogów przy użyciu nowych .ektory i przekazujesz jako Kontekstem Odbicia.

Zapoznaj się z tym series of articles przedstawiającym funkcje MEF2. Zapoznaj się także z tym introductory article from CodeProject.

Nie użyłem Castle Winsdor, więc nie mogę tego komentować.

3

Jeśli odnosząc się do nowej wersji systemu Windows Store z MEF available on nuget, potem the documentation stany,

Nie ma Katalog pojęcie, ani partie kompozycji, ani żadnych interfejsów API „hierarchia pojemnik” lub kompozycja scopingu.

Brzmi szalenie dla programisty MEF 1, ale strona wyjaśnia uzasadnienie. Jednak wymagają:

  • Kiedy dll dodaje aplikację jest świadoma nowych Exports dostępnych.

To wyraźnie niedostępne w MEF 2 (Win Store) wersji, ponieważ nie obsługuje ponownego kompozycję. Do tego potrzebny jest "pełny" MEF z .NET Framework, w System.ComponentModel.Composition.

Powiązane problemy