【发布时间】:2016-08-25 12:47:45
【问题描述】:
我们有一个关于编译时程序集绑定重定向的问题:
- V 组(退伍军人)正在开发产品 P1
- P1 由 Team V 在两个分支(分支 1.6.x 和 1.7.x)中不断开发,因此产品 P1 的版本在两个分支中随着时间的推移而递增
- NG 团队(新一代)基于产品 P1 构建了产品 P2(使用 P1 分支 1.7 中的某些组件)
- 产品 P2 包含一个程序集 A2(强命名),可帮助实现任何基于 P1 的产品(P2、P3...)
- NG 团队为程序集 A2 创建了一个 Nuget 包(它引用了 P1 分支 1.7 中的某些程序集)
- 现在,NG 团队已启动产品 P3,必须使用 P2 中的程序集 A2 和 P1 中的程序集 A1
- P1 中的 Assembly A1 也可用作 Nuget 包,但在 1.6 版中(因为 1.7 尚未批准用于产品 P3)
- 因此,NG 团队现在拥有带有两个参考的产品 P3:A2 和 A1
- 现在的问题是,A2 在 1.7 版中引用了 A1,但在 1.6 版中我们只有 A1
- 1.7 版中不允许 Team NG 使用 A1
这就是我们在编译时为强命名程序集寻找绑定重定向的原因。据我所知(通过调查),在为强命名程序集设置此属性时,“特定版本”属性无效。
这样的重定向是可能的还是有其他建议?
非常感谢提前 问候,迈克尔
【问题讨论】:
标签: compile-time strongname assembly-references assembly-binding-redirect