如何删除 JArray 中的 属性?
How to delete a property in a JArray?
我有一个 JArray,如下所示,文件 属性 包含一个 base64 字符串,所以它很大,如何删除它?
{
"files": [
{
"filename": "892a3a3bb7814d67995d4059b278c581.png",
"real_filename": "Logo - Trimmed.png",
"filesize": 42198,
"filetype": "image/png",
"file": "xxxx"
},
{
"filename": "22a3a3bb7814d67995d4059b278c581.png",
"real_filename": "Logo - Trimmed2.png",
"filesize": 42198,
"filetype": "image/png",
"file": "xxxx"
}
]
}
我已经在下面尝试过,但它抛出了一个异常:
Cannot add or remove items from Newtonsoft.Json.Linq.JProperty.
for (int _i = 0; _i < _ja_files.Count; _i++)
{
_ja_files[_i]["file"].Remove();
}
迭代 JArray
中的 JObject
并使用 JObject.Remove()
删除 属性。
var jObj = JObject.Parse(jsonStr);
foreach (JObject obj in jObj["files"] as JArray)
{
obj.Remove("file");
}
我有一个 JArray,如下所示,文件 属性 包含一个 base64 字符串,所以它很大,如何删除它?
{
"files": [
{
"filename": "892a3a3bb7814d67995d4059b278c581.png",
"real_filename": "Logo - Trimmed.png",
"filesize": 42198,
"filetype": "image/png",
"file": "xxxx"
},
{
"filename": "22a3a3bb7814d67995d4059b278c581.png",
"real_filename": "Logo - Trimmed2.png",
"filesize": 42198,
"filetype": "image/png",
"file": "xxxx"
}
]
}
我已经在下面尝试过,但它抛出了一个异常:
Cannot add or remove items from Newtonsoft.Json.Linq.JProperty.
for (int _i = 0; _i < _ja_files.Count; _i++)
{
_ja_files[_i]["file"].Remove();
}
迭代 JArray
中的 JObject
并使用 JObject.Remove()
删除 属性。
var jObj = JObject.Parse(jsonStr);
foreach (JObject obj in jObj["files"] as JArray)
{
obj.Remove("file");
}