如何区分对象的2个版本的2个Json表示形式,以便可以将输出提供给JsonConvert.PopulateObject(...)以将对象的第一个版本转换为第二个版本。例如:
public class Dog
{
public string Name { get; set; }
public int Age { get; set; }
}
var myDog = new Dog { Name = "Dio", Age = 1 };
var before = JsonConvert.SerializeObject(myDog); // { "Name": "Dio", "Age" : 1 }
myDog.Age++;
var after = JsonConvert.SerializeObject(myDog); // { "Name": "Dio", "Age" : 2 }
// How do I generate this variable, so that I can use it with PopulateObject?
var ageIncrementJson = "{ \"Age\" : 2 }";
myDog = new Dog { Name = "Dio", Age = 1 };
JsonConvert.PopulateObject(ageIncrementJson, myDog);
// myDog should now have an age of 2
我尝试使用JsonDiffPatch,但是会生成一个前后文档,但Newtonsoft不接受(例如{“ Age”:[“ 1”,“ 2”]}