私のMVC4プロジェクトでは、次のようなコントローラーアクションがあります。
public ActionResult GetJson()
{
var serialized = JsonConvert.SerializeObject(DateTime.Now);
return Json(DateTime.Now, JsonRequestBehavior.AllowGet);
}
ブラウザへの応答は、古いASP.NET形式です。
"/ Date(1358987787691)/"
ただし、MVC4はデフォルトでjson.netを使用し、json.netは日付にISO8601形式を使用することを知っています。
上記のコードでは、シリアル化された変数には(私が欲しいもの)が含まれています:
"\" 2013-01-24T13:39:12.7182079 + 13:00 \ ""
なぜreturnJson(DateTime.Now)は(一見)json.netを使用しないのですか?
また、global.asxに次の行を入れてみました。
var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;
json.UseDataContractJsonSerializer = false;
しかし、役に立たない。