C#JSON JavaScriptSerializer对象解析
问题描述:
;-) 我有一个问题来解析对象的JSON响应。C#JSON JavaScriptSerializer对象解析
我有以下对象:
public class Conferences : List<ConferenceData>
{
}
public class ConferenceData
{
private string _id;
private string _title;
private string _conference_code;
private string _conference_state;
private string _conference_type;
private string _datetime_start;
private int? _dial_type;
private string _moderator_code;
private int? _max_participants_count;
public string id
{
get { return _id; }
set { _id = value; }
}
public string title
{
get { return _title; }
set { _title = value; }
}
public string datetime_start
{
get { return _datetime_start; }
set { _datetime_start = value; }
}
public int? duration { get; set; }
public int? dial_type
{
get { return _dial_type; }
set { _dial_type = value; }
}
public string conference_type
{
get { return _conference_type; }
set { _conference_type = value; }
}
public string conference_state
{
get { return _conference_state; }
set { _conference_state = value; }
}
public bool? auto_recording { get; set; }
public string cost_centre { get; set; }
public int? participants_count { get; set; }
public int? security_code { get; set; }
public List<Participant> participants { get; set; }
public bool? broadcast_only_flag { get; set; }
public string moderator_code
{
get { return _moderator_code; }
set { _moderator_code = value; }
}
与以下逻辑:
string json = "[{\"conference\":{\"conference_code\":\"208475\",\"conference_state\":\"planned\",\"conference_type\":\"scheduled\",\"datetime_start\":\"2013-04-30T15:30:00+02:00\",\"dial_type\":1,\"id\":\"7\",\"moderator_code\":\"652929\",\"scheduled_participants_count\":null,\"title\":\"betreff\"}},{\"conference\":{\"conference_code\":\"502012\",\"conference_state\":\"planned\",\"conference_type\":\"scheduled\",\"datetime_start\":\"2013-04-30T16:30:00+02:00\",\"dial_type\":1,\"id\":\"11\",\"moderator_code\":\"133140\",\"scheduled_participants_count\":null,\"title\":\"Betreff\"}},{\"conference\":{\"conference_code\":\"530437\",\"conference_state\":\"planned\",\"conference_type\":\"scheduled\",\"datetime_start\":\"2013-05-02T10:24:14+02:00\",\"dial_type\":1,\"id\":\"15\",\"moderator_code\":\"903257\",\"scheduled_participants_count\":null,\"title\":\"Test ui\"}}]";
JavaScriptSerializer serializer = new JavaScriptSerializer();
Conferences conferences = serializer.Deserialize<Conferences>(json);
有什么不对?我尝试了很多不同的对象typs,.. ARRY,列表,字典,集合,...我无法找到合适的典型的... :-(
最好的问候! 马克
答
只是声明一个类
public class Conference
{
public ConferenceData conference;
}
和反序列化作为
var conferences = serializer.Deserialize<List<Conference>>(json);
+0
完美!有用!非常感谢! – user2354047 2013-05-06 09:52:57
怎么了?你告诉*美国*!什么错误你好吗? – 2013-05-06 09:39:50
System.Collections.Generic.Dictionary'2 [System.Strin g,System.Object]不是类型WindowsFormsApplication2.ConferenceData的值,不能在此通用列表中使用。 Parametername:价值 – user2354047 2013-05-06 09:49:26