3

Json 文字列を ac# オブジェクトに逆シリアル化しようとしています。ただし、Json データには、オブジェクト内の文字列のディクショナリに逆シリアル化する必要がある追加のデータが含まれる場合があります。

これを達成するための最も効果的な方法は何ですか?

IExtensibleDataObject を使用しましたが、それは追加のデータを ExtensionDataObject に格納するだけで、読み取ることができません。代替手段はありますか?

以下の例:

dataContractJsonSerializer が Json 文字列で不明なデータを検出した場合、AdditionalData プロパティに移動する必要があります。

Class Person
{
   public string Name {get;set;}
   public int Age {get;set;}

   //This should catch any other data in JSON, that is not strictly defined.
   public Dictionary<string,string> AdditionalData {get;set;}
}

JSON の例:

{"Name" : "John". "Age" : "33" }
{"Name" : "John". "Age" : "33","Address" : "somecity" }
{"Name" : "John". "Age" : "33","Address" : "somecity","Gender" : "M" }
4

0 に答える 0