4
隨着新流利MEF編程模型,如果我有多個目錄:什麼時候將RegistrationBuilder傳遞給目錄?
- 做我通過哪個目錄我
RegistrationBuilder
到??? - 我需要通過
RegistrationBuilder
撥打SatisfyImportsOnce
嗎? - 我使用
SatisfyImportsOnce
或ComposeParts
中的哪一個? (在流利的mef有什麼變化?)
E.g.下面是我的llustrate混亂(見的r.h.s評論)一個例子:
// Get pre-wired registration builder
RegistrationBuilder rb = new MefCompositionRoot().CommonRegistrationBuilder();
// Register this WCF service class
rb.ForType<LogService>().Export<LogService>();
var assembly = typeof (LogService).Assembly;
var assemblyCatalog = new AssemblyCatalog(assembly, rb); // <-- HERE?
var dirCatalog = new DirectoryCatalog("bin", rb); // <-- and HERE?
// Combine catalogs
var catalog = new AggregateCatalog();
catalog.Catalogs.Add(dirCatalog);
catalog.Catalogs.Add(assemblyCatalog);
var container = new CompositionContainer(catalog);
container.SatisfyImportsOnce(this, rb);// THIS?
container.ComposeParsts(this); ///or THIS?