多くのプラグインを持つメインアプリがあります。PluginReader
これが私のメインアプリのクラスです:
Public Class PluginReader
<ImportMany(GetType(IWebPlugin))>
Private m_WebPlugins As IEnumerable(Of Lazy(Of IWebPlugin))
Public Sub New()
End Sub
Public Property WebPlugins As IEnumerable(Of Lazy(Of IWebPlugin))
Get
Return m_WebPlugins
End Get
Set(value As IEnumerable(Of Lazy(Of IWebPlugin)))
m_WebPlugins = value
End Set
End Property
End Class
私のプラグインには、次のコードがあります。
<Export(GetType(IWebPlugin))>
<PartCreationPolicy(CreationPolicy.NonShared)>
Public Class PluginClass
Implements IWebPlugin
'Code to implement IWebPlugin here
私のカスタム コントローラー ファクターは、プラグインのエクスポートを正しく読み取り、IWebPlugin がエクスポートされていることを確認できますが、ImportMany は設定されていません。
説明が必要な場合はお知らせください。ありがとう!