如何解决 nuget 包中依赖版本的冲突?

How to resolve a conflict in dependency version in a nuget package?

我们正在开发一个被打包为 nuget 的 class 库。该库依赖于 Unity.Container。我们正在分发这个库以供其他团队的几个其他项目使用。这些项目都使用 Unity.Container。但问题是其中一个项目使用旧版本的 Unity 并且 updating/changing 版本不是两个项目的选项。

  1. 如何打包我的 nuget 库以满足两个项目的版本?

我们在 Unity.Container 中唯一使用的只是基础知识,RegisterType、RegisterInstance 和 Resolve。

  1. 是否有一种设计模式可以完全消除在我们的 nuget 包中添加 Unity.Container 作为依赖项的需要?

您可以在目标项目中使用程序集重定向来指向所需版本的引用程序集 (unity.container)。