1

ローカルホストからjsonデータを取得するためのこのコードを使用していますが、タイトルに記載されているエラーが発生しています。デバッグ中に応答にカーソルを合わせると、正しい応答が表示されます。JSON.NETを使用してjson応答を解析します。

var response = reader.ReadToEnd();

                   List<Company> cLst = JsonConvert.DeserializeObject<List<Company>>(response);    //Error

                    this.Dispatcher.BeginInvoke(() =>
                        {

                            foreach (Company c in cLst)
                            {
                                ListBoxItemControl Li = new ListBoxItemControl();
                                Li.CompanyNameTextBlock.Text = c.CompanyName;
                                Li.PromotionTextBlock.Text = c.PromotionText;
                                listBox1.Items.Add(Li);
                            }
                        });

これが会社のクラスです。

class Company
{
    public string CompanyName {get; set;}
    public string CompanySlogan { get; set; }
    public string CompanyDescription { get; set; }
    public string CompanyRating { get; set; }
    public string CompanyDpPath { get; set; }
    public string CompanyOtherInfo { get; set; }
    public string CompanyFollowers { get; set; }
    public int CompanyID { get; set; }

    public int PromotionID { get; set; }
    public string PromotionText { get; set; }
    public string PromotionRating { get; set; }
    public string PromotionPicPath { get; set; }
    public string PromotionTitle { get; set; }
    public int PromotionLikes { get; set; }
    public int PromotionComments { get; set; }



}
4

2 に答える 2

1

Company クラスを公開してみる

于 2012-11-25T15:54:19.980 に答える
0

次のような別のクラスを受講します。

 public class RootObject
 {
  public List<Company> companies;
 }

そして、次のようにコードを変更します。

var jsonData = JsonConvert.DeserializeObject<RootObject>(response);
List<Company> cLst = jsonData.companies;

これを試して、私に知らせてください。

于 2012-05-28T12:54:46.593 に答える