我从sharepoint 2013 rest api获得了这个Json响应:
{"odata.metadata":"https://killer33.sharepoint.com/sites/dev/_api/$metadata#SP.ListData.MessageListItems&$select=Title,Mesage,Description,Priority,ID","value":[{"odata.type":"SP.Data.MessageListItem","odata.id":"ed1c9e96-8dde-4498-b7e9-4db2bcb9e1ea","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(1)","Id":1,"Title":"ok","Mesage":"get","Description":"fd","Priority":"Medium","ID":1},{"odata.type":"SP.Data.MessageListItem","odata.id":"9afa3cd5-a6a1-40e7-a484-f608676096f3","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(2)","Id":2,"Title":"gf","Mesage":"fgf","Description":"gfgf","Priority":"High","ID":2},{"odata.type":"SP.Data.MessageListItem","odata.id":"df2c06fd-46b9-4a68-b2d5-563f64c8743d","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(3)","Id":3,"Title":"gfgf","Mesage":"fgf","Description":"fggf","Priority":"Medium","ID":3},{"odata.type":"SP.Data.MessageListItem","odata.id":"986dc67a-44d3-4c36-8e56-9c93f81107f2","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(4)","Id":4,"Title":"fgfg","Mesage":"gf","Description":"gff","Priority":"Medium","ID":4},{"odata.type":"SP.Data.MessageListItem","odata.id":"d33b78da-1493-4d2c-a7b6-8afaa0503506","odata.etag":"\"2\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(5)","Id":5,"Title":"fgf","Mesage":null,"Description":null,"Priority":"Low","ID":5},{"odata.type":"SP.Data.MessageListItem","odata.id":"4e65919d-2ec4-480a-a803-a9fdba355c32","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(6)","Id":6,"Title":"gfg","Mesage":"dfd","Description":"fdf","Priority":"Medium","ID":6},{"odata.type":"SP.Data.MessageListItem","odata.id":"d9c50d4f-7fea-49fe-9389-1b8f547c1cb0","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(7)","Id":7,"Title":"dfdfd","Mesage":"ff","Description":"fgfg","Priority":"Medium","ID":7},{"odata.type":"SP.Data.MessageListItem","odata.id":"6d82e510-13b0-4a17-abbe-d19117063de6","odata.etag":"\"1\"","odata.editLink":"Web/Lists(guid'92804422-bd9e-4d7b-baf0-5c2de0953b95')/Items(8)","Id":8,"Title":"rt","Mesage":"ggf","Description":"fgd","Priority":"Low","ID":8}]}
我只需选择 ID ,标题,说明,优先级字段。
我怎么能这样做?
答案 0 :(得分:1)
有很多种方法可以在c#中解析JSON,其中一种方法是使用Newtonsoft.JSON
您需要使用Nuget Package安装它。
然后你需要为你的JSON创建模型。
public class Value
{
[JsonProperty("odata.type")]
public string odata_type { get; set; }
[JsonProperty("odata.id")]
public string odata_id { get; set; }
[JsonProperty("odata.etag")]
public string odata_etag { get; set; }
[JsonProperty("odata.editLink")]
public string odata_editLink { get; set; }
public int Id { get; set; }
public string Title { get; set; }
public string Mesage { get; set; }
public string Description { get; set; }
public string Priority { get; set; }
public int ID { get; set; }
}
public class Response
{
[JsonProperty("odata.metadata")]
public string odata_metadata { get; set; }
public List<Value> value { get; set; }
}
解析逻辑
Response response = JsonConvert.DeserializeObject<Response>(json); //json is your json string
希望它有所帮助!!