3
異なるケースの複数のプロパティ名がある場合、Json.NETがJSONオブジェクトを対応するC#オブジェクトに逆シリアル化する方法を理解したいと思います(これは良い方法ではありませんが、 JSON.NETがこれをどう扱うかを知るために)。異なるケースの同じプロパティ名を持つJson逆シリアル化
Iは、以下のように定義されたAC#オブジェクトを有する:私はJSON文字列の上に変換するJSON.NETデシリアライズ方法を使用する場合は、
{ "Name": "TestName","Isemployee":true, "isemployee":false};
として
public class TestModel
{
public string Name { get; set; }
public bool IsEmployee { get; set; }
}
とJSONオブジェクトをこれら2つのプロパティのうち1つをIsEmployee
変数に割り当てるTestModelオブジェクト?なぜ?
ありがとうございました。
IsemployeeとisemployeeはIsEmployeeと同じではないので、IsEmployeeはデフォルトのbool値であるため、falseになります –
いいえ、isemployeをtrueにすると、trueと解析されます。 – Kiran
[this](http://james.newtonking.com/archive/2009/03/21/json-net-3-5-beta-3-jsonserializer-improvements)非常に古い「リリースノート」、* Json正確な一致が失敗した場合、.NET *は大文字と小文字を区別しない一致を試みます。この機能が設定可能であるか、それとも有効であるかはわかりませんが、あなたが説明しているところからはそうであるようです。 IsemployeeとIsemployeeの順番を変更して、適用されたIsEmployee値に影響があるかどうかを調べます。私の推測では、最後の要素が優先されます。 –