如何确保ac#解决方案中的所有项目都使用相同版本的第三方库?

Rem*_*sen 7 .net c# asp.net-mvc nuget

我正在研究一个包含多个项目的解决方案,并Newtonsoft.Json在一个项目(类库)中进行了更新.这在另一个项目(ASP.Net WebApi项目)中引起了一些错误,因为它还需要Newtonsoft.Json更新引用.

错误是在运行时而不是编译时抛出的,我不得不Newtonsoft.Json在解决方案中的每个项目上手动安装.

Install-Package Newtonsoft.Json
Run Code Online (Sandbox Code Playgroud)

这让我想知道是否有可能在解决方案级别更新所有第三方库?

我知道你可以创建一个文件夹来存储库并将其添加到源代码控制中,但我想避免这种情况.

我希望Nuget在从存储库中获取解决方案后下载库.我想知道是否有可能:

  1. 在解决方案中创建一个名为的新项目 www.solution.com.thirdparty
  2. 使用nuget添加对所有第三方软件的引用
  3. 透露所有第三方库 www.solution.com.thirdparty

我不知道如何才能完成第三步,我也知道是否有更好的方法可以做到这一点?

小智 9

使用包在解决方案层面,描述在这个岗位.

或者你可以看看Paket,它有一个很好的传递依赖解析算法,可能适合你.