【发布时间】:2014-10-05 15:17:22
【问题描述】:
我在尝试使用 Json.NET 将 json 反序列化为我的自定义类型时遇到了一个奇怪的问题:
public class Shot
{
[JsonProperty("frames")]
public ObservableCollection<Frame> Frames
{
get { return Frames = _frames ?? new ObservableCollection<Frame>(); }
set { _frames = value; }
}
}
产生了这个异常:
API 'System.Collections.ObjectModel.ObservableCollection
1[[AxisCtrl.Core.Model.Frame, AxisCtrl.Core.Logic, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]..ctor(System.Collections.Generic.List1[AxisCtrl.Core.Model.Frame])' 不能在当前平台上使用。看 http://go.microsoft.com/fwlink/?LinkId=248273 了解更多信息。
当我尝试从 Windows 8.1 Windows 商店应用程序中将 json 反序列化为这种类型,但在我的单元测试环境中的“类库”类型项目中运行时:
提到的 url 已经失效并且正在重定向到主页,所以那里没有太多帮助。 奇怪的是,在我开始将我的项目和类拆分为不同的结构之前,这已经奏效了。但是我没有移动 Shot 类或更改它所包含的项目类型。
Shot 类在“.NET Framework 4.5 及更高版本”、“Windows 应用商店应用程序 (Windows 8) 及更高版本”和“Windows Phone 8”的可移植类库类型项目中定义,主项目是 Windows 8.1应用。
对这里发生的事情有什么想法吗?
【问题讨论】:
标签: c# microsoft-metro json.net windows-8.1