0
我們正在使用MEF按名稱導入和導出代表。使用帶MEF的類型導出和導入代表
public delegate IThing ThingGenerator();
[Export("ThingGenerator")]
public IThing MyThingGenerator() { ... }
[ImportMany("ThingGenerator")]
public IEnumerable<ThingGenerator> ThingGenerators { get; set; }
爲了可維護性,我們想用導入和導出類型。但是,我們似乎無法完成這項工作。
[Export(typeof(ThingGenerator))]
public IThing MyThingGenerator() { ... }
[ImportMany(typeof(ThingGenerator))]
public IEnumerable<ThingGenerator> ThingGenerators { get; set; }
在某些表單中,我們收到錯誤,指出導出的函數與委託類型不匹配。在其他情況下,類型似乎不會被導出。有沒有人成功做到這一點?
我同意你的意見。另一種方法是使用ThingGenerator工廠類生成一個Generate方法。 –