2012-05-10 13 views
3

JSONエンコードされた文字列があります。私はまた、C#クラスを持っている:JSON.netデシリアライズ

class Pupu{ 
    public static List<Pupu> plist = new List<Pupu>(); 
    public string user {get; set;} 
    public string number {get; set;} 
} 


[{"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"62827"},{"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"30460"}, {"user":"0D27D44D40C5185423078B3C93B3E6B596AD21A0","number":"25143"}, {"user":"0D27D44D40C5185423078B3C93B3E6B596AD21A0","number":"22776"}, {"user":"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD","number":"19755"}] 

私はそれをdesirializingています:

plist = JsonConvert.DeserializeObject<List<Pupu>>(stringAbove); 

私は入れませんしています:

Attempt to access the method failed: System.Collections.Generic.List`1..ctor(); 

おかげで、私はいくつかのために、このを探しています時間は今です。 (私はC#の初心者です)。

+0

クラスXの宣言の中にクラスXのインスタンスを持つことはできません。 –

答えて

12

のは、あなたのコードをクリーンアップしてみましょう:

public class Score 
{ 
    public string user { get; set; } 
    public string number { get; set; } 
} 

、今あなたはスコアのリストにJSONをデシリアライズすることができます

List<Score> plist = JsonConvert.DeserializeObject<List<Score>>(stringAbove); 

、ここでは完全な例です:

public class Score 
{ 
    public string user { get; set; } 
    public string number { get; set; } 
} 

class Program 
{ 
    static void Main() 
    { 
     var json = "[{\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"62827\"},{\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"30460\"}, {\"user\":\"0D27D44D40C5185423078B3C93B3E6B596AD21A0\",\"number\":\"25143\"}, {\"user\":\"0D27D44D40C5185423078B3C93B3E6B596AD21A0\",\"number\":\"22776\"}, {\"user\":\"27FFBADD7284E5CB98EAC45559589E28FDDDC3AD\",\"number\":\"19755\"}]"; 
     List<Score> plist = JsonConvert.DeserializeObject<List<Score>>(json); 

     foreach (Score score in plist) 
     { 
      Console.WriteLine("user: {0}, number: {1}", score.user, score.number);  
     } 
    } 
} 
+0

私の間違いは実際のファイルでは同じクラス名です。申し訳ありません – ewooycom

+0

私はパブリックキーワードが不足しています。ありがとう – ewooycom

+1

はい、あなたはあなたの質問にいくつかの事を見逃しました。だから私はあなたが実行し、あなたの要件に適応できる完全な実例を投稿することに決めました。 –

関連する問題