string jsOnText= "[{\"a\": \"aaa\",\"b\": \"bbb\",\"c\": \"ccc\"},{\"a\": \"aa\",\"b\": \"bb\",\"c\": \"cc\"}]";
var mJObj = JArray.Parse(jsonText);
//需求,删除列表里的a节点的值为\"aa\"的项
IList _ILIST = new List(); //存储需要删除的项
JArray _JARRAY = new JArray();
foreach (var ss in mJObj) //查找某个字段与值
{
if ((((JObject)ss)["a"]).ToString() == "aa")
{
_ILIST.Add(ss);
_JARRAY.Add(ss);
Console.Write(_ILIST[0]);
Console.Write(_ILIST[0].GetHashCode());
Console.Write("\r\n---------------------------\r\n");
Console.Write("\r\n---------------------------\r\n");
Console.Write(_JARRAY[0]);
Console.Write(_JARRAY[0].GetHashCode());
Console.Write("\r\n---------------------------\r\n");
Console.Write("\r\n---------------------------\r\n");
Console.Write(mJObj[1].GetHashCode());
}
}
foreach (var item in _ILIST) //移除mJObj 有效
{
mJObj.Remove(item);
}
foreach (var item in _JARRAY) //移除mJObj 无效
{
mJObj.Remove(item);
}