如何从JSON字符串数组中获取值

时间:2015-01-23 17:37:36

标签: c# jquery ajax json stringify

我通过jQuery ajax和JSON stringify传递以下数组...

"sessionsArray":[{"eventNum":"15200","title":"Integrity"},{"eventNum":"15210","title":"Estate and Probate"}]

到c#/ .NET Web服务。我需要循环并提取值,但我今天有模糊的大脑,无法使语法正确。请帮忙吗?

[WebMethod(EnableSession = true)]
    public string saveRegistration(Dictionary <string, string> sessionsArray)

List<string[]> eventsList = new List<string[]>();

foreach (var eventItem in sessionsArray)
{
    eventsList.Add(new[] { eventItem.Key, eventItem.Value });
}

感谢。

3 个答案:

答案 0 :(得分:0)

我得到了它的工作。

Dictionary <string, string>[] sessionsArray

答案 1 :(得分:0)

我想我会首先为我的对象定义一个模型,如下所示:

public class SessionsArray
{
 public string eventNum { get; set; }
 public string title { get; set; }
}

public class RootObject
{
  public List<SessionsArray> sessionsArray { get; set; }
}

然后我将使用JSON.NET解析json:

string json = "{'sessionsArray':[{'eventNum':'15200','title':'Integrity'},{'eventNum':'15210','title':'Estate and Probate'}]}";
var root = JsonConvert.DeserializeObject<RootObject>(json);

答案 2 :(得分:0)

您可以使用Newtonsoft.Json,如下所示:

var jsonData = JObject.Parse(sessionArray); 然后你有JObject。您可以将其强制转换为JArray,并且可以使用for循环来获取数据。

for(int i = 0 ; i<(JArray)jsonData.Count;i++)
{
var data = jsonData[i];
}