CompositionContainer.ComposeExportedValue方法是否接受一个对象并使对象的导出方法可用?我对此方法的作用感到困惑。我所知道的是这个方法使用容器注册对象。它如何用容器注册对象?此方法是否以某种方式主要使对象的导出方法或具有可用于其他classess的导出属性的对象?
答案 0 :(得分:4)
AFAIK AttributedModelServices.ComposeExportedValue<T>
的CompositionContainer
扩展方法将给定对象注册为满足合同T
的部分。这意味着该对象确实将用于组合导入T
的其他对象。
或许更重要的是不做:
AttributedModelServices.ComposeParts
。IDisposable
,则在处置容器时将 处理。一般来说,你应该避免使用这些方法。通常,您只需向类中添加必要的属性,然后通过AssemblyCatalog
将其添加到容器中。