【问题标题】:Add elements to XDocument after LINQ Query在 LINQ 查询之后向 XDocument 添加元素
【发布时间】:2011-01-24 22:13:07
【问题描述】:

我的 XDocument 中有以下 XML LINQ 查询。

var totals = (from x in MyDocument.Descendants("TOTALS") select x).FirstOrDefault();

找到总计节点后,我需要向该节点添加一些元素并将更改推送到 XDocument。

【问题讨论】:

    标签: c# linq .net-3.5 c#-3.0 linq-to-xml


    【解决方案1】:

    所以只需对返回的节点进行更改...除非您克隆它,否则它将仍然是文档的一部分。

    顺便说一句,您的查询表达式没有添加任何内容 - 更简单的代码是:

    var totals = MyDocument.Descendants("TOTALS").FirstOrDefault();
    

    【讨论】:

      【解决方案2】:

      您可以使用AddAfterSelf() 针对totals 添加新节点。这些更改将自动附加到主 XDocument,因为 totals 引用文档中的 XElement。

      【讨论】:

        【解决方案3】:
        totals.Add(new XElement("NewNode", "New node value"));
        

        【讨论】:

        • totals (IEnumerable) 没有添加事件
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-01-26
        • 1970-01-01
        • 1970-01-01
        • 2012-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多