2013-08-07 27 views
5

MEF2 hakkında güzel bir örnek bulamıyorum.MEF2 Kataloglar nasıl çalışır? Görünüşe göre kaldırıldı

Ben bir eklenti dizini oluşturmak ve İthalat yüklemek için bir dizin katalog kullanmak istiyorum.

isterim Ne:

  1. Hiçbir özellik. Konfigürasyon Oluşturucu ile Açıklamaları Kullanın
  2. Eklenti dizini
  3. Bir dll eklendiğinde, uygulama yeni dışa aktarmaların farkındadır.

Ben sadece bunun için Castle Windsor kullanabilir misiniz?

+0

Ne denediniz? Neden DirectoryCatalog'un kaldırıldığını düşünüyorsunuz? Ne demek 'Öznitelik yok'? 'Yapılandırma Oluşturucunun Kullanımı' ile ne demek istiyorsun? – Matt

cevap

1

MEF2 ile tanıtıldı Kuralları Modeli İlişkilendirilmiş Model için bir alternatiftir. Her iki model bir uygulamada bir arada var olabilir. Kataloglar, bir argüman olarak ReflectionContext alan yeni bir kurucuya sahiptir. RegisrationBuilder bu sınıftan türetilmiştir. Böylece bir RegistrationBuilder yaratır, kurar ve sonra yeni .törleri kullanarak ve bir ReflectionContext olarak geçirerek bir veya daha fazla katalog yaratırsınız.

bu series of articles tanıtan MEF2 özellikleri göz at. Ayrıca bu introductory article from CodeProject bir göz atın.

Ben bu yüzden bu konuda yorum yapamam Kale Winsdor kullanmadım.

3

Eğer MEF available on nuget yeni Windows Mağazası sürümüne bahsediyorsan, o zaman the documentation devletler

hiçbir katalog kavram yoktur, ne kompozisyon toplu, ne de herhangi bir “kapsayıcı hiyerarşisi” veya kompozisyon kapsam API'leri.

Bir MEF 1 geliştiricisine delice ses geliyor, ancak sayfa mantığını iyi açıklıyor. Ancak, sen gerektirir:

bir dll uygulaması eklenir
  • bulunan yeni İhracatın farkındadır. o yeniden bileşimini desteklemediği

Bu, MEF 2 (Win Store) sürüm açıkça kullanılamaz. Bunun için sen System.ComponentModel.Composition yılında, .NET Framework "Dolu" MEF gerekir.