2017-01-19 9 views
0

私は多くの順列を試みましたが運はありませんでした。マイデータ:Json DeserializingObjectクラスを解析できません

{ 
"100": 
{ 
    "SI": { 
     "conversionFactor": 0, 
     "conversionOffset": 0, 
     "format": "", 
     "suffix": "" 
    }, 
    "US": { 
     "conversionFactor": 0, 
     "conversionOffset": 0, 
     "format": "", 
     "suffix": "" 
    }, 
    "datax": 1879, 
    "dataY": 1, 
    "description": "Some datam", 
    "siZ": { 
     "conversionFactor": 0, 
     "conversionOffset": 0, 
     "format": "", 
     "suffix": "" 
    }, 
    "values": [] 
}, 
"ZZ_yes": ...same reapeat but different values 

は、私がデータを解析するためのクラスを使用します。

クラスSearch_Fge1_results {

//[JsonProperty(PropertyName = "")] 
    public string DataItemName { get; set; } 

    //[JsonProperty(PropertyName = "dataitem")] 
    public dataitem DataItem{ get; set; } 

} 

クラスのデータ項目{取得 { 公共の文字列ditem。セット; }

[JsonProperty(PropertyName = "S1")] 
    public abbs1 S1 { get; set; } 

    [JsonProperty(PropertyName = "US")] 
    public abbus1 US { get; set; } 

    [JsonProperty(PropertyName = "datax")] // Ei luokka vaan avainpari 
    public string Datax { get; set; } 

    [JsonProperty(PropertyName = "dataY")] // Ei luokka vaan avainpari 
    public string DataY { get; set; } 

    [JsonProperty(PropertyName = "description")] // Ei luokka vaan avainpari 
    public string Description { get; set; } 

    [JsonProperty(PropertyName = "siZ")] 
    public abbus1 Siz { get; set; } 

    [JsonProperty(PropertyName = "values")] 
    public string[] Values { get; set; } 


} 

マイコード: ..

var results = JsonConvert.DeserializeObject<Search_Fge1_results>(result); 

それは間違っている何..エラーまたはnull値を返しますか?

+0

JSONを完全に投稿してください。 –

答えて

0

私はあなたがここのようにどこかに行くことをお勧め: http://json2csharp.com/

あなたはJSONのサンプルに貼り付けることができ、そしてそれは、出力サンプルと一致するC#のオブジェクトのリストをなります。

create objects from JSON samples within more recent versions of Visual Studioでもかまいません。

JSONサンプルは、必要なデータだけに最小化することができます。後で同じソースから来るJSON応答文字列に追加のプロパティが含まれる可能性があります。コードをどのように見えるかを見てから、サービスの仕様を見て、生成されたコードで示されているパターンに従って、必要な追加プロパティを追加することをお勧めします。バットオフ

は、私はあなたの財産の命名( SIS1)の問題を見て、あなたが提供されていませんした内容 abbus1など abbs1表情(それらが異なることになっている場合)。しかし、上記のサービスのいずれかを使用してコードを生成すると、修正された問題が表示される可能性があります。