2010-05-13 46 views
1

我有一个IList<T>属性与[ImportMany(allowRecomposition = true)]属性装饰的类。在某些情况下,应用程序可能找不到任何可用的请求类型的导出。现在,如果找不到所请求类型的导出,则会引发CompositionException。我不喜欢应用程序流是由抛出的异常决定的,所以我不想在这种情况下捕捉并做出反应。相反,我只是想让程序继续执行。如何防止MEF在找不到导出时抛出异常?

是否有一个标志或我可以设置使此导入可选?我知道单个导入属性,您可以这样做:[Import(AllowDefault = true)]但'AllowDefault'不是ImportMany属性上的选项。

+1

嗨 - 您能否在您的帖子中包含异常消息的详细信息以及导入构造函数/属性的签名?这不是预期的行为 - ImportMany允许零对多。 – 2010-05-13 22:02:02

回答

3

由于定义ImportMany会允许零个或多个项目,所以如果没有值,它不会导致任何错误。

+0

你完全正确。这是导致错误的其他内容。感谢您的时间。 – Kilhoffer 2010-05-14 12:08:46

相关问题