[英]Convert json response to C# variables
如何在控制台應用程序中將返回的JSON值轉換為變量? 我從rest api調用中獲得了多家公司(超過750家)的JSON響應,並將其寫入控制台應用程序,如下所示:
"companies": [
{
"guid": "81eb95d6-d89e-4e93-aad0-eff89a450fcf",
"name": "Example Company 1",
"rating": 770,
"rating_date": "2018-05-27"
},
{
"guid": "81eb95d6-d89e-4e93-aad0-eff89a450fcf",
"name": "Example Company 2",
"rating": 810,
"rating_date": "2018-05-27"
},
{
"guid": "81eb95d6-d89e-4e93-aad0-eff89a450fcf",
"name": "Example Company 3",
"rating": 760,
"rating_date": "2018-05-27"
},`
然后,我希望使用SharePoint客戶端將這些公司值作為項目上傳到共享點列表中。
{
ClientContext context = new ClientContext("http://exampleSharepoint/List");
List companiesList = context.Web.Lists.GetByTitle("Companies");
ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();
ListItem newItem = companiesList.AddItem(itemCreateInfo);
newItem["Title"] = CompanyTitle;
newItem["guid"] = Guid;
newItem["Rating"] = Rating;
newItem["Rating Date"] = RatingDate;
newItem.Update();
context.ExecuteQuery();
}
我看過json解串器,但是很難將其應用於上下文。 任何幫助深表感謝。
如果我理解正確,您想將json轉換為可以在代碼中顯式使用的對象嗎?
您需要首先獲取Newtonsoft.Json nuget軟件包。
您可以使用JsonConvert.DeserializeObject()方法將json字符串反序列化為ac#對象。
您所需要做的就是與json匹配的相應c#對象。 在您的情況下,您需要以下內容:
public class Company
{
[JsonProperty(PropertyName = "guid")]
public Guid Id { get; set; }
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
[JsonProperty(PropertyName = "rating")]
public int Rating { get; set; }
[JsonProperty(PropertyName = "rating_date")]
public DateTime Rating_date { get; set; }
}
您可以直接從Json反序列化此對象的列表:
List<Company> companies = JsonConvert.DeserializeObject<List<Company>>(JsonString);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.