1

我在 WP7 上使用 JSON.Net 反序列化字符串时遇到问题。我有这个 JSON 字符串:

JSON 示例

我已经从中生成了一个类(http://json2csharp.com/)。

       void GETHotels()
        {
            WebClient c = new WebClient();
            c.DownloadStringAsync(new Uri(@"..."));
            c.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadStringCompleted);
        }

        DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
        {         
            var deserialized = JsonConvert.DeserializeObject<List<Classes.RootObject>>(e.Result);
        }

但是当我尝试反序列化 e.Result 时,我得到了异常:

将值“[{"hotId": ... 6390285}]”转换为类型“System.Collections.Generic.List`1[Hotel_cz.Classes.RootObject]”时出错。路径 '',第 1 行,位置 971。

有人可以帮我解决这个问题吗?

4

1 回答 1

1

这应该工作...

var hotels = JsonConvert.DeserializeObject<List<Hotel>>(e.Result);

public class Hotel
{
    public int hotId;
    public string Name;
    public double latitude;
    public double longitude;
}
于 2013-01-23T11:42:14.453 回答