日時プロパティをシリアル化するとき、NewtonsoftのJsonを使用しています。jsonの応答は次のようになります。
..."CreatedOn":"\/Date(1317303882420+0500)\/",...
私はそれを単純な文字列にしたい
..."createdOn": "2011-05-05 14:03:07", ...
私のクラスプロパティはDateTimeですが、プロパティ名を変更する属性を追加できるので、どのように文字列として強制的にシリアル化することができますか
[JsonProperty("id")]
public int ProductID { get; set; }
dateTimeプロパティを強制的に文字列にシリアル化する同様の方法はありますか?
ジェームズ・ニュートン・キングがStackOverflowで行った投稿から、これができるように見えます。
string isoJson = JsonConvert.SerializeObject(this, new IsoDateTimeConverter());
// {"Details":"Application started.","LogDate":"2009-02-15T00:00:00Z"}
参考回答: NewtonsoftのJSON SerializerからJSON DateTimeを解析する
また、Json.NETと日付に関するドキュメントもあります。 JSONで日付をシリアル化する
DateTimeFormat
プロパティを使用して出力をカスタマイズする例を次に示します。
return JsonConvert.SerializeObject(this, Formatting.None, new IsoDateTimeConverter() { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" });