すべてのDateTimeオブジェクトを "yyyy-MM-dd"の基本形式にする必要があります。私はこれを行うにはJSON.Netを使用していたときWeb API 2.0 - JavaScriptConverterを使用したカスタム日付書式設定
、それはWebApiConfig.csに以下を追加することでうまく働い:
config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(
new IsoDateTimeConverter() { DateTimeFormat = "yyyy-MM-dd" });
はしかし、私はIHttpActionResult
だけreturn Json(objectToSerialize)
を返すために、私のコントローラを再加工しています。現在、日付形式は間違っています。これは現在、JavaScriptConverter
を使用しているためです。私が間違っているなら教えてください。
シリアル化されたオブジェクトのすべてのDateTimeを、必要な形式に変換するにはどうすればよいですか?
デフォルトでは、現在「1927-01-29T00:00:00」と表示されています...「1927-01-29」が必要です。
トータルオーバーキルのような奇妙なハッキングが見られました(this oneなど)。
これを行うにはきれいな方法がありますか?
を保持している必要があります。しかし、あなたが本当にJavaScriptConverterを使用する必要がありますか? –
正直なところ私は考えていないので、私は尋ねているのです。私はオブジェクトをシリアル化するときにこのフォーマットでWeb APIがすべての日付を書式設定するようにするグローバル設定を好むでしょう。コントローラは 'IHttpActionResult'を返し、戻りラインは' return Json(myObject) 'です。 – Patrick