我导出了一个类,并且导入了代码的不同部分。
[Import]
public IEnumerable<IRTAOperatorErrorNotifications> RTAOperatorErrorNotifications
{
get { return m_RTAOperatorErrorNotifications; }
}
现在DLL是类的驻留是有条件地加载到应用程序中,并且在大多数情况下它将不存在,所以我想知道如果DLL不存在会导致程序崩溃吗? 我想要的是,如果DLL不在那里,只需将对象设置为null,这样我就可以检查并做正确的事情。有没有办法有条件地导入所以如果没有加载类,则将值设置为null?
谢谢,
答案 0 :(得分:0)
建议的更改:因为它是IEnumerable
,您需要使用ImportMany
。 AllowDefault = true
允许代码在未找到导入时将其设置为NULL
。
[ImportMany(AllowDefault = true)]
public IEnumerable<IRTAOperatorErrorNotifications> RTAOperatorErrorNotifications { get; private set; }