MEF:在零件上添加ImportingConstructor时,GetExports <t,tmd =“”>不起作用

时间:2018-09-17 04:12:35

标签: mef

我刚接触MEF并遇到问题。我尝试使用谷歌搜索,但似乎没有遇到类似我的问题。我有一个具有3个出口的接口容器。它们每个都也与元数据相关联。当我使用Container.GetExports查询导出时,将返回3个导出,并且我可以遍历元数据。然后,我使用ImportingConstructor属性添加了参数化的构造函数。 Container.GetExports现在不返回任何以前返回的导出。以下是不同类中的命令,但按执行顺序排列。

[ImportingConstructor()]
public AddCommand([Import("Operand1")]int pintOperand1,
                          [Import("Operand2")]int pintOperand2, 
                          [Import("Operator")]char pcharOperator) : base(pintOperand1, pintOperand2, pcharOperator){}

Container.ComposeParts(this);

AvailableCommands = Container.GetExports<ICalculatorCommand, ICalculatorCommandMetaData>().Select((x) => x.Metadata).ToList();

0 个答案:

没有答案