1。MEF的部件,也就是Export部分只能是DLL吗?不可能是EXE吗?也就是说Program1.exe做宿主,Program2.exe做部件,Program1.exe调用Program2.exe不可以吗?
我这里做测试好像不能啊
2。部件如何使用宿主提供的服务呢?也就是说宿主使用Export,在部件中使用Import应该怎么做呢?
MEF用的人这么少吗?
对于问题1,exe文件作为程序集引用,用AssemblyCatalog应该是可以的吧。
对于问题2,可以参考一下我之前写过的一篇文章。http://www.cnblogs.com/TianFang/archive/2013/12/04/3458597.html
谢谢您的回复,这些对我很有帮助。
我还有一点问题:
就是宿主提供的服务是一个方法,那么在部件中应该如何调用这个方法呢?
@luoshupeng:
方法通过Export(typeof(Action))之类的形式也是可以调用的。 不过一般建议通过接口这种比较规范化的形式的形式导入导出。