C# 解决方案程序集版本不兼容在运行时出现

C# 解决方案程序集版本不兼容在运行时出现,c#,visual-studio,nuget,solution,C#,Visual Studio,Nuget,Solution,我有一个.NET项目解决方案,大到足以解决nuget软件包版本的问题。一个项目包含依赖于旧Newtownsoft.JSON库版本的程序集,另一个项目使用程序集,需要更新版本的此库 我知道看起来没有办法解决这个问题,但我的问题不是关于这个。我在运行时面临错误的程序集版本问题,当调用第二个程序集中的方法时,我会因此得到一个异常 那么,是否有任何工具或Visual Studio选项来检查解决方案中是否有任何程序集的依赖项版本不兼容?如果这种工具也能帮助解决问题,那就太酷了 是否有任何工具或Visual

我有一个.NET项目解决方案,大到足以解决nuget软件包版本的问题。一个项目包含依赖于旧Newtownsoft.JSON库版本的程序集,另一个项目使用程序集,需要更新版本的此库

我知道看起来没有办法解决这个问题,但我的问题不是关于这个。我在运行时面临错误的程序集版本问题,当调用第二个程序集中的方法时,我会因此得到一个异常

那么,是否有任何工具或Visual Studio选项来检查解决方案中是否有任何程序集的依赖项版本不兼容?如果这种工具也能帮助解决问题,那就太酷了

是否有任何工具或Visual Studio选项来检查解决方案中是否有任何程序集的依赖项版本不兼容

恐怕答案是否定的,因为NuGet本身可以很好地完成这项任务。当您通过NuGet安装任何包时,如果解决方案中有任何程序集的依赖项版本不兼容,NuGet将提示“两者之间存在冲突…”

此外,您可以尝试将“MSBuild项目生成输出详细信息”更改为“详细信息”或更高版本,以检查详细信息错误日志。为此,请通过工具->选项->项目和解决方案->构建和运行。将MSBuild项目生成输出详细级别设置为Detailed或更高。生成项目并在输出窗口中签出错误日志。它将显示有关不兼容的详细信息,然后只需选择适当的版本即可


详细的日志很难阅读。它有如此多不相关的信息,以至于要找到应该选择的程序集版本是不可能的。是否有一个工具可以显示所有引用依赖项的树,显示版本号并突出显示问题?