我刚接触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();