【发布时间】:2017-09-08 03:30:39
【问题描述】:
我正在使用 Visual Studio 2017 v15.3.3。我的 UWP 项目针对的是 Windows Creators Update 15063,我的 Nuget 包如下:
我的解决方案构建没有错误,并且运行良好,但是由于我的代码隐藏和/或 ViewModel 代码正在引用 NuGet 包这一事实,我在 UWP 应用项目的设计时遇到了错误。这就是我所看到的:
这个问题不是 System.Reactive 独有的。我在 Newtonsoft.Json v10.0.3 包中遇到了一个不同(但看似相关)的错误:
Could not load file or assembly 'Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The bound assembly has a version that is lower than that of the request. (Exception from HRESULT: 0x80132000)
有趣的是,将 System.Reactive 降级到 v3.0.0 并不能解决问题:错误声称系统找不到 v3.0.0 程序集。
最新 AutoMapper 包 (v6.1.1) 的类似问题
重现问题:
- 创建一个新的 UWP 项目(目标随便,似乎无所谓)
- 创建一个新的
UserControl - 在此 UserControl 的构造函数中,添加一些引用任何这些包的代码,例如,
var s = new Subject<int>();并添加using System.Reactive.Subjects; - 将该用户控件添加为 MainPage.xaml 中的 XAML 元素
- 编译并记下错误
...或查看此示例here
令人沮丧的是,几周前在 Visual Studio 2015 中切换到 VS 2017 之前,这 3 个大包(System.Reactive、Newtonsoft.Json、AutoMapper)在我的 UWP 项目中都运行良好。
到目前为止唯一有效的是将 Newtonsoft.Json 从最新的 v10.0.3 降级到 v9.0.1(降级到 v10.0.2 或 10.0.1 不起作用)。不幸的是,我无法降级 System.Reactive,因为它们的未列出版本低于 3.0
我还尝试修复我的 VS 安装,以及安装 mobile/xamarin 组件。
非常感谢任何解决方法或见解,因为这对我来说是一个阻塞问题,谢谢!
【问题讨论】:
-
你有什么问题?
-
我的问题是:是否有解决方案或解决方法?
-
尝试将此包:“Microsoft.NETCore.UniversalWindowsPlatform”降级到 5.3.4 或更高版本。另外,用你得到的错误更新问题!
-
@NicoZhu-MSFT,当然,我这里有 VS 解决方案:1drv.ms/u/s!AoAyZHNq7zcSjEXq-4bobPfvFTCX
-
@AnastasiosMoraitis,我尝试降级到 v5.3.4 并没有区别
标签: uwp json.net nuget system.reactive xaml-designer