对不起,Json新手。已经阅读但无法使其正常工作。我在.aspx页面上返回了这个json格式的字符串,我正在使用C#。
{"ContactsListResult":[{"Contact":"Fred Smith","ContactID":25},{"Contact":"Bill Wilson","ContactID":45}]}
我有一个Contact对象。
public class Contact
{
public string Contact { get; set; }
public int ContactID { get; set; }
}
我需要将每个联系人都放入Contact对象和联系人列表中 - 只需使用Framework 4.0中内置的任何内容。我对Json的'ContactsListResult'位不感兴趣 - 我只对方括号内的联系人列表感兴趣。
答案 0 :(得分:0)
DataContractJsonSerializer
是您需要使用的课程。请看这里的演示:
http://msdn.microsoft.com/en-us/library/hh674188.aspx
另外,谷歌吧。这花了我2分钟的研究。
这是关于同一项目的另一个堆栈溢出问题。别人推荐JSon.NET Read JSON using DataContractJsonSerializer
答案 1 :(得分:0)
using System;
using System.Collections.Generic;
using System.Web.Script.Serialization;
namespace ConsoleApplication1 {
class Program {
[Serializable]
public class ContactsListResult {
public string Contact { get; set; }
public int ContactID { get; set; }
} //
[Serializable]
public class CList {
public List<ContactsListResult> ContactsListResult = new List<ContactsListResult>();
} //
static void Main(string[] args) {
string s = "{\"ContactsListResult\":[{\"Contact\":\"Fred Smith\",\"ContactID\":25},{\"Contact\":\"Bill Wilson\",\"ContactID\":45}]}";
JavaScriptSerializer lSerializer = new JavaScriptSerializer();
CList lItems = lSerializer.Deserialize<CList>(s);
foreach (ContactsListResult lItem in lItems.ContactsListResult) Console.WriteLine(lItem.Contact + " " + lItem.ContactID);
Console.ReadLine();
} //
} // class
} // namespace
请关注我博客上的详细信息:
http://csharphardcoreprogramming.wordpress.com/2014/01/23/json-part-1-basics-follow-up-to-xml/
Bastian M.K.太田
答案 2 :(得分:0)
您可以使用此库,而无需在没有任何数据注释的情况下装饰您的类... http://james.newtonking.com/json