JObject.Parse(jsonString) がブール データの問題を引き起こしています。例:jsonは次のとおりです。
{
"BoolParam": true
}
次のコードを使用して解析しました。
JObject data = JObject.Parse(str1);
foreach (var x in data)
{
string name = x.Key;
Console.Write(name + " (");
JToken value = x.Value;
Console.Write(value.Type + ")\n");
Console.WriteLine(value);
}
これは値を次のように出力します: BoolParam (Boolean): True
後で使用するためにこの json を保存すると、大文字と小文字が区別されるため問題が発生します。保存されたjsonは次のようになります
{
"BoolParam": True
}
ただし、後で使用すると、JObject.Parse(str) は無効な Json としてエラーをスローします。値の解析中に予期しない文字が発生しました: T. Path 'BoolParam', line 2, position 15.
ケースを「True」から「true」に変更すると、機能します。保存時に大文字と小文字を変更するためにこのハックを追加したくありませんが、このシナリオを処理するより良い方法はありますか。