【发布时间】:2011-05-11 22:16:48
【问题描述】:
一点背景:
我有一个库项目 A,其中包含大量数据和一些托管 DLL。这个项目有自己的安装程序(由于它的大小),可以独立安装。
然后我有一些其他项目,当他们检测到项目 A 也已安装时,它们可以提供额外的功能。
设置: 我创建了一个 Interface.dll,其中包含由项目 A 实现的接口。所有其他项目都包含此 DLL,因此我可以在运行时加载项目 A 并将其转换为特定接口。
版本控制出现问题。有时某些项目将包含较新版本的 Interface.dll,而安装的项目 A 依赖于旧版本。发生这种情况时,我的演员表不再有效。
我正在考虑一些可能性:
- 放弃 interface.dll 并动态加载所有内容。
- 一些版本检测并通知用户更新他的项目A的版本。
- 使用其他通信方式(例如命令行)
【问题讨论】:
-
为什么要更新interface.dll?你加了会员吗?改变现有成员?有什么不同?
标签: .net dll dynamic-loading