C# 如何拆分json格式字符串以将其反序列化为.net对象?

C# 如何拆分json格式字符串以将其反序列化为.net对象?,c#,C#,这个主题听起来不清楚,但逻辑很简单。我返回了一个json格式的响应数据。我想将其反序列化为我已经定义的.net对象。我使用JavaScriptSerializer类反序列化方法,它要求参数为字符串。现在我的响应数据是json格式的,并且有多个根 我的代码是 WebRequest request = WebRequest.Create ("https://xxx.xxxxxx.com/xxxxx"); request.Method = "GET"; request.Conten

这个主题听起来不清楚,但逻辑很简单。我返回了一个json格式的响应数据。我想将其反序列化为我已经定义的.net对象。我使用JavaScriptSerializer类反序列化方法,它要求参数为字符串。现在我的响应数据是json格式的,并且有多个根

我的代码是

 WebRequest request = WebRequest.Create  ("https://xxx.xxxxxx.com/xxxxx");
    request.Method = "GET";
    request.ContentType = "application/json";
    var response = (HttpWebResponse)request.GetResponse();
    using (var streamReader = new StreamReader(response.GetResponseStream()))
    {
        var responseText = streamReader.ReadToEnd();
    }
responseText值为

[
 {
 "webinarKey":5303085652037254656,
 "subject":"Test+Webinar+One",
 "description":"Test+Webinar+One+Description",
 "organizerKey":73563532324,
 "times":[{"startTime":"2011-04-26T17:00:00Z","endTime":"2011-04-26T18:00:00Z"}]
 },
 {
 "webinarKey":9068582024170238208,
 "name":"Test+Webinar+Two",
 "description":"Test Webinar Two Description",
 "organizerKey":73563532324,
 "times":[{"startTime":"2011-04-26T17:00:00Z","endTime":"2011-04-26T18:00:00Z"}]
 }
 ]
我使用以下代码将responseText反序列化到我定义的.net对象

JavaScriptSerializer ser = new JavaScriptSerializer();
Webinar w=ser.Deserialize<Webinar>(responseText);
JavaScriptSerializer ser=newJavaScriptSerializer();
网络研讨会w=ser.Deserialize(responseText);
错误显示为responseText是数组,而不是字符串。
那么如何分割responseText?我认为这里不适合使用string.split()方法。

您的响应文本实际上是一个json数组(包含2个元素),如
[
]
字符所示。请尝试以下操作:

Webinar[] w=ser.Deserialize<Webinar[]>(responseText);
Webinar[]w=ser.Deserialize(responseText);

您的响应文本实际上是一个json数组(包含2个元素),如
[
]
字符所示。请尝试以下操作:

Webinar[] w=ser.Deserialize<Webinar[]>(responseText);
Webinar[]w=ser.Deserialize(responseText);

您是否尝试过:
列表w=ser.Deserialize(responseText)

您是否尝试过:
列表w=ser.Deserialize(responseText)

您是否尝试过反序列化数组而不是单个对象
网络研讨会[]
<代码>序列反序列化(responseText)您是否尝试过反序列化数组而不是单个对象
网络研讨会[]
<代码>序列反序列化(responseText)