JTokenの日付時刻文字列をDateTimeに変換しない 質問する

JTokenの日付時刻文字列をDateTimeに変換しない 質問する

日付時刻を文字列として保持している JToken を文字列として解析しようとしています。暗黙的に、これを DateTime として扱い、解析してから文字列として返しています。

元の値は次のとおりです:"2015-11-23T00:00:00"

私がそうすると、arr["value"].ToString();次のようになります:"23/11/2015 00:00:00"

私が本当に欲しいのは、渡されたもの、つまり元の値です。

を使用しようとしましたFormatting.Noneが、二重引用符などが導入されてしまいます。

簡単な方法はありますか?

ベストアンサー1

DateParseHandlingDateTime のように見えるものをすべて DateTimeify しようとする JSON.NET の自動試行をオーバーライドするために使用します。

void Main()
{
    var s = "{ \"value\" : \"2015-11-23T00:00:00\" }";

    using (var sr = new StringReader(s))
    using (var jr = new JsonTextReader(sr) { DateParseHandling = DateParseHandling.None })
    {
        var j = JToken.ReadFrom(jr);
        Console.WriteLine(j["value"].ToString()); // prints '2015-11-23T00:00:00'
    }
}

おすすめ記事