我试图从XML中的元素中删除父级。
我的XML:
XElement user = (from el in document.Root.Elements("Users").Elements("UserID ").Elements("Identification")
where (string)el.Attribute("IDValue") == myID
select el).FirstOrDefault();
我发现我的用户是我的IDValue:
<Users>
<UserID ManagementID="10">
<Identification IDValue="1" />
<!-- More elements Here -->
</UserID>
</Users>
现在,我想删除所有user.Parent.Parent 我的意思是删除元素:
user.Parent.Parent.Remove()
**我将拥有许多用户元素,这就是为什么我首先要查找IDValue
我找到了需要它的解决方案: 我已经从我的linq获得了节点
send_data
答案 0 :(得分:0)
var user = document.Root
.XPathSelectElements("//UserId")
.FirstOrDefault(userId => userId.Element("Identification").Attribute(XName.Get("IDValue")).Value == myID);
答案 1 :(得分:-2)
试试这个:
List<XElement> users = document.Descendants("Users")
.Where(user => user.Elements("Identification")
.Where(el => (string)el.Attribute("IDValue") != myID)
.Any()).ToList();
XElement element1 = document.Descendants("Element1").FirstOrDefault();
element1.ReplaceNodes(users);