Json.NETは、アドバタイズされた機能の1つとして「大文字と小文字を区別しないプロパティの逆シリアル化」をリストしています。指定されたプロパティの大文字と小文字を一致させる試みが最初に行われ、一致が見つからない場合は大文字と小文字を区別しない検索が実行されることを読みました。ただし、これはデフォルトの動作ではないようです。次の例を参照してください。
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{key: 123, value: \"test value\"}"
);
// result is equal to: default(KeyValuePair<int, string>)
プロパティの大文字と小文字が一致するようにJSON文字列が変更された場合(「Key」と「Value」と「key」と「value」)、すべて問題ありません。
var result =
JsonConvert.DeserializeObject<KeyValuePair<int, string>>(
"{Key: 123, Value: \"test value\"}"
);
// result is equal to: new KeyValuePair<int, string>(123, "test value")
大文字と小文字を区別しない逆シリアル化を実行する方法はありますか?