JSON.NETシリアライザーの標準シリアライザーを交換することは問題ではありません。以下のコードは、ScottHanselmanのブログから直接抜粋したものです。
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.NETMVC4ベータ版のアップデートはありますか?