7我有這樣一個網絡服務器中的JSON:反序列化JSON在Windows手機使用Json.NET
{"My Book List": [{"ID":"5","TYPE":"History","TITLE":"Ekannoborti","PRICE":"200","IMAGE":"Ekannoborti.jpg","DOWNLOAD LINK":"http://www.starhostbd.com/"}],"success":3}
要反序列化到目前爲止,我已經做了:
public class Attributes
{
public string ID{ get; set; }
public string TYPE { get; set; }
public string TITLE { get; set; }
public string PRICE { get; set; }
public string IMAGE { get; set; }
public string DOWNLOADLINK { get; set; }
}
public class DataJsonAttributeContainer
{
public List<Attributes> attributes { get; set; }
//public Attributes attributes { get; set; }
}
public static T DeserializeFromJson<T>(string json)
{
T deserializedProduct = JsonConvert.DeserializeObject<T>(json);
return deserializedProduct;
}
在&我代碼:
void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
//var deserializedJSON = JsonConvert.DeserializeObject<Attributes>(e.Result);
var container = DeserializeFromJson<DataJsonAttributeContainer>(e.Result);
string asd = container.attributes[0].DOWNLOADLINK[0].ToString();
//string asd = deserializedJSON.DOWNLOADLINK[0].ToString();
}
的問題是:從調試wiindow我可以發即在e.Result中分配了數據,但容器保持爲空。如何解決這個問題呢 ?請幫忙 !
隨着我的和pedro'd修改此代碼爲我工作。我可以提取整個鏈接。 但是你需要使用'string asd = container.attributes [0] .DOWNLOADLINK.ToString();'來獲得整個鏈接。在你的情況下,你只獲得第一個字符。 – saxos