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

问题描述

我们正在开发一个打包为nuget的类库。该库依赖于Unity.Container。我们正在分发此库,以供其他团队的其他两个项目使用。这些项目都使用Unity.Container。但是问题在于,其中一个项目使用的是Unity的较旧版本,而这两个项目都不能选择更新/更改版本。

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

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

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

解决方法

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