问题描述
我正在观看Pluralsight课程:使用Json.NET在C#中使用JSON入门
我不明白为什么它增加了createdBy属性
public static void ShowPopulate()
{
Console.Clear();
Console.WriteLine("*** PopulateObject ***");
//Generate test data
List<UserInteraction> userLogs = GetTestData();
string jsonReviewed = @"{
'reviewed': true,'processedBy': ['ReviewerProcess'],'reviewedDate': '" + DateTime.Now.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssK") + @"'
}";
Console.WriteLine(jsonReviewed);
Console.WriteLine("- Populate values");
foreach (UserInteraction log in userLogs)
{
JsonConvert.PopulateObject(jsonReviewed,log);
}
Console.WriteLine("Reviewed: " + userLogs[0].reviewed);
Console.WriteLine("Reviewed Date: " + userLogs[0].reviewedDate);
Console.WriteLine("Processed By: " + String.Join(" | ",userLogs[0].processedBy));
}
解决方法
JsonConvert.PopulateObject接受现有对象,并使用接收到的json数据对其进行修改。 在此示例中,processingBy是一个集合,并将其添加“ ReviewerProcess”到列表中。 []提示使用了数组或集合。
您可以在这里查看这些方法的工作原理https://www.newtonsoft.com/json/help/html/PopulateObject.htm
,知道了。有一个计数属性,现在里面有两件事,ReviewerProcess就是其中之一