为 JSON.NET 序列化程序交换标准序列化程序不是问题。下面的代码直接取自 Scott Hanselman 的博客
http://www.hanselman.com/blog/OnTheNightmareThatIsJSONDatesPlusJSONNETAndASPNETWebAPI.aspx
JsonSerializerSettings serializerSettings = new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore };
serializerSettings.Converters.Add(new IsoDateTimeConverter());
GlobalConfiguration.Configuration.Formatters[0] = new JsonNetFormatter(serializerSettings);
但是,这样做后我无法保存任何内容,ajax 调用失败。我回来的错误是:
此 DataController 不支持实体“JObject”的“插入”操作。
JObject 是从 JSON.NET 序列化程序返回的内容。它不尊重附加到实体的“__type”属性。
示例 JSON:
[{"Id":"0","Operation":1,"Entity":{"__type":"Product:#Catalog.Models","Sku":"adsfadsf"}}]
除了深入 JSON.NET 源代码来解决这个问题,我还能做些什么吗?ASP.NET MVC 4 Beta 中是否有更新可以解决此问题?