Windows phone 8 Wp8 Json反序列化问题

Windows phone 8 Wp8 Json反序列化问题,windows-phone-8,asp.net-web-api,json,json-deserialization,Windows Phone 8,Asp.net Web Api,Json,Json Deserialization,我正在工作的wp应用程序。我认为json数据类型有问题,但我不确定。首先,我想分享我的json数据示例: Json数据 加载事件 其他功能 void webClient\u DownloadStringCompleted已完成(对象发送方,DownloadStringCompletedEventArgs e) { var results=JsonConvert.DeserializeObject(e.Result); Show(results.ToString()); } 公课诗 { 公共int

我正在工作的wp应用程序。我认为json数据类型有问题,但我不确定。首先,我想分享我的json数据示例:

Json数据 加载事件 其他功能
void webClient\u DownloadStringCompleted已完成(对象发送方,DownloadStringCompletedEventArgs e)
{
var results=JsonConvert.DeserializeObject(e.Result);
Show(results.ToString());
}
公课诗
{
公共int Id{get;set;}
公共字符串PoemName{get;set;}
公共字符串PoemImage{get;set;}
公共字符串{get;set;}
}
公共类收费表
{
公共列表{get;set;}
}
之后,它给出了这个错误:“附加信息:无法将当前JSON数组(例如[1,2,3])反序列化为类型‘SiirYuvasi.TrialWebSide+ToList’,因为该类型需要一个JSON对象(例如{“name”:“value”})才能正确反序列化。”

正如我所说,我认为json数据类型存在问题,但我不知道如何更改这种类型


我希望我能解释。感谢所有回复。

尝试使用
数组
而不是
列表

试试这个

public class Poem
{
//getters
//setters
}

public class ToList
{
    public Poem poem { get; set; }
}

var result = JsonConvert.DeserializeObject<List<ToList>>(e.Result);
公共课诗歌
{
//吸气剂
//二传手
}
公共类收费表
{
公共诗歌{get;set;}
}
var result=JsonConvert.DeserializeObject(e.result);

我想不是这样的。但我试过了,结果也出现了同样的错误
var webClient = new WebClient();
        webClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);
        webClient.DownloadStringAsync(new Uri("http://denememvc-001-site1.smarterasp.net/api/poem"));
void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        var results = JsonConvert.DeserializeObject<ToList>(e.Result);
        MessageBox.Show(results.ToString());
    }

    public class Poem
    {
        public int Id { get; set; }
        public string PoemName { get; set; }
        public string PoemImage { get; set; }
        public string Biography { get; set; }
    }

    public class ToList
    {
        public List<Poem> poems { get; set; }
    }
public class ToList
{
    public Poem[] poems { get; set; }
}
public class Poem
{
//getters
//setters
}

public class ToList
{
    public Poem poem { get; set; }
}

var result = JsonConvert.DeserializeObject<List<ToList>>(e.Result);