在我的项目中,我的依赖层次结构存在问题。我在我的代码中使用了一个库 ( WriteableBitmapExtensions ),并且我还有另一个也使用 WriteableBitmapExtensions 的第 3 方库。只有另一个库与特定的旧版本紧密相关,我的代码需要其最新版本中的功能。
这是对依赖项的描述:
有类似的问题和解决方案,但他们通过配置文件在运行时通过程序集绑定解决它,但我认为这与 Silverlight 应用程序不兼容。
那么有没有办法在 Silverlight 上下文中解决这些不同版本的程序集依赖项?如果没有,我想我的选择是:
1) 很可能我可以说服 3rd 方库的供应商更新以使用最新版本的 WriteableBitmapExtensions,但我不希望依赖他们保持最新。特别是因为 WriteableBitmapExtensions 项目仍在更新中,我们经常利用它们的新功能。
2) 由于 WriteableBitmapExtensions 是开源的,我想我可以将它的源代码重新编译为一个新的程序集“MyWriteableBitmapExtensions”并在我的源代码中使用它。但是如果两个 3rd 方库引用不同版本的 WriteableBitmapExtensions,我会再次遇到这个问题。
我怀疑我会选择选项 2,但我想知道在提交/重构之前是否有更好的方法(如其他问题中的运行时程序集绑定)。谢谢!