我的JSON如下所示:
[
{
"id": "test.txt",
"fields": {
"_str.application": [ "Text File" ],
"_str.body": [ "asdsadasd" ],
"_str.mimetype": [ "text/plain" ]
}
}
]
如何从C#代码中将新属性添加到fields
?
我已为Serialization
public class Fields
{
[JsonProperty("_str.application")]
public IList<string> _str_application { get; set; }
[JsonProperty("_str.body")]
public IList<string> _str_body { get; set; }
[JsonProperty("_str.mimetype")]
public IList<string> _str_mimetype { get; set; }
}
public class Document
{
[JsonProperty("id")]
public string id { get; set; }
[JsonProperty("fields")]
public Fields fields { get; set; }
}
我需要在运行时向JsonProperty
添加新的Fields
。
答案 0 :(得分:0)
您可以使用Json.NET反序列化为动态并在运行时添加字段,然后再次序列化:
string jsonText = "{'Bar':'something'}";
dynamic foo = JObject.Parse(jsonText);
foo.Dynamic="field";
jsonText = JsonConvert.SerializeObject(foo);