0

携帯電話の開発は初めてです。JSON データを C# のリスト ボックスにバインドすると、空白の画面が表示され、リストにデータが入力されません。Web サービスから JSON 応答を正常に取得できます。私のコードは次のとおりです。

 public void callbackwall(object sender, UploadStringCompletedEventArgs e)
    {
        string json = e.Result.ToString();
        if (!string.IsNullOrEmpty(json))
        {
            var example = JsonConvert.DeserializeObject<List<listreadqueries>>(json);
            ServerList.ItemsSource = example;

         }
        }


    public class readqueriesObject
    {
        public string customer_read_status { get; set; }
        public string description { get; set; }
        public string Inserted_Date { get; set; }
        public string Query_From_Id { get; set; }
        public string Query_From_Name { get; set; }
        public string Query_Id { get; set; }
        public string Query_Status { get; set; }
        public string Query_To_Id { get; set; }
        public string Query_To_Name { get; set; }
        public string title { get; set; }
        public int count { get; set; }
        public List<object> historyList { get; set; }
        public string Query_Type { get; set; }
    }
    public class listreadqueries
    {
        public List<readqueriesObject> queries { get; set; }
    }
}

}

私が得ているJSON応答は[{"customer_read_status":"read","description":"Maecenas nec elit metus. Donec porttitor porttitor felis vitae hendrerit. Sed a interdum magna amet.\r\n","Inserted_Date":"Aug 14, 2013 at 01:22"},{....},{..}]

私のXAMLコードは次のとおりです

                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Margin="0,0,0,20" Width="300">
                            <TextBlock Text="{Binding Path=description}" />
                        </StackPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>
4

1 に答える 1

1

あなたの逆シリアル化は

var example = JsonConvert.DeserializeObject<List<readqueriesObject>>(json);

必要ありませんlistreadqueries

PS:あなたのjsonは配列であり、配列を含むオブジェクトではありません( {queries:[...]})

于 2013-08-21T10:12:21.253 に答える