MetadataAttribute
複数使用できるように作成しました。
[MetadataAttribute]
[AttributeUsage(AttributeTargets.Method, AllowMultiple = true)]
public class BusinessLogicMetaDataAttribute : ExportAttribute, IBusinessLogicMetaData
{
//......
}
次に、GetExports<T>()
メソッドのインポートに使用しています。
//.....
var imported = _container.GetExports<Action<object, EvantArgs>, IBusinessLogicMetaData>("myplugin");
//.....
これが私のプラグインメソッドです:
[BusinessLogicMetaData("myplugin")]
[BusinessLogicMetaData("myplugin1")]
public void Test(object sender, EventArgs e)
{
//....
}
私AlowMultiple=true
のMetadataAttribute
. metadataAttribute を AllowMultiple = false に設定し、プラグイン メソッドの 2 番目の属性を削除すると、問題なく動作します。
プラグイン メソッドで 2 つの属性を使用できないのはなぜですか?
助けてくれてありがとう!