C# 如何获取XElement的第一个元素

C# 如何获取XElement的第一个元素,c#,linq-to-xml,C#,Linq To Xml,如何获取第一个元素 <outline title="Javascript" text="Javascript"> </outline> 如果节点不包含其子节点,则无法选择该节点。这种“选择”相当于一种突变。您可以创建一个作为副本的新XElement,然后对新XElement进行变异:- var desireElement = new XElement(existXElement.Where(w => (string)w.Attribute("title") ==

如何获取第一个元素

<outline title="Javascript" text="Javascript"> </outline>

如果节点不包含其子节点,则无法选择该节点。这种“选择”相当于一种突变。您可以创建一个作为副本的新XElement,然后对新XElement进行变异:-

 var desireElement = new XElement(existXElement.Where(w => (string)w.Attribute("title") == "Javascript").First());

 desireElement.RemoveNodes();

对不起,我不明白问题是什么,如果您已经有XElement,为什么需要搜索它?我看到的输入的唯一变化是删除了子“outline”元素。是否要从原始元素中删除该元素?还是要从副本中删除子项?可能先执行
XElement desiredElement=new-XElement(existXElement.genderantsandself(“outline”).First(el=>el.Attribute(“title”).Value==“Javascript”);desiredElement.Nodes().Remove()根据您的需要,它搜索具有该标题的第一个“大纲”,创建副本,删除子元素。我只想选择第一个元素而不选择其子元素。您的代码可以这样做。黑褐色
var desireXElement =existXElement.Where(w => (string) w.Attribute("title") == "Javascript").FirstOrDefault();
 var desireElement = new XElement(existXElement.Where(w => (string)w.Attribute("title") == "Javascript").First());

 desireElement.RemoveNodes();