我发现了Visual Studio的一个奇怪行为。
我有一个应用程序,它的依赖关系图中有相同的NuGet包(但版本不同)。
图表如下所示:
“cussing dependency”规则指出版本1。9.0应该恢复,因为它的最低适用版本在我的图。
如果我在Visual Studio中加载“MyApp”的解决方案,NuGet包“PnP.核心版本1。“7.0”已使用。
我知道这一点,因为当右键单击一个函数并说“转到定义”时,版本 www.example.com 的程序集进行反编译并显示:
当我尝试调用只存在于1中的函数时,IDE也会显示错误。9.0.
但是,如果我运行应用程序并使用ILSpy检查加载的DLL文件程序集版本,我会看到正确的程序集(1.9.0.0)加载。
Visual studio在停止模式下还原的NuGet版本与在调试(或构建)模式下还原的NuGet版本不同,这是怎么回事?
1条答案
按热度按时间yc0p9oo01#
这是我这边的csproj文件:
通过使用上述配置,版本1.9.0将成功安装:
我没有注意到1。7.0安装
如果你仍然遇到这个问题,请分享你的信息(示例代码和配置),并在你的第一个屏幕截图中解释组和sharepoint。