{
"TestData":{
"Year__of__Account":"2019",
"Tax___x0025_":"0.06",
"Buildings__1":"1000",
"Contents__1":"400",
"Total_Insurable_Value":"100",
"Buildings__Prem":"2560.8",
"Contents__Prem":"1707.2",
"YB__1":"1950",
"No__Buildings":"55",
"Location_Sprinklers_YN":"No",
"test":"test"
}
}
在上面的 JSON 示例中,我想要在 "TestData" 属性内添加一个名为 "Name" 值为 "John" 的属性。我如何使用 .net Core 3.0 System.Text.Json 库实现这一点。
我尝试使用 Utf8JsonWriter 的方法,但它创建了一个新的 JSON 对象,而不是将其附加到上述现有 JSON 中。
using (MemoryStream memoryStream1 = new MemoryStream())
{
using (Utf8JsonWriter utf8JsonWriter1 = new Utf8JsonWriter(memoryStream1))
{
using (JsonDocument jsonDocument = JsonDocument.Parse(json))
{
utf8JsonWriter1.WriteStartObject();
utf8JsonWriter1.WritePropertyName("Name");
utf8JsonWriter1.WriteStringValue("John");
utf8JsonWriter1.WriteEndObject();
// how can I add above properties to JsonDocument object??
}
}
}
JsonDocument.Parse()
来加载文档,添加新属性,然后使用JsonDocument.WriteTo()将其写出。 - 500 - Internal Server ErrorJsonDocument
是只读的。有一个开放问题 Writable Json DOM #39922 进行跟踪。相关但不重复的问题:使用 System.Text.Json 修改 JSON 文件。 - dbc