【问题标题】:How to add a node as a children to an existing node XElement?如何将节点作为子节点添加到现有节点 XElement?
【发布时间】:2023-03-30 13:39:01
【问题描述】:

这是我的代码。

    XElement Response = new XElement("Response",
                                new XElement("RequestId", requestID),
                                new XElement("ResponseId", "E001"),
                                new XElement("Target", target));
    Response.Add(new XElement("templates"));

现在我想在模板中添加模板列表 我怎么做?我使用 linq 来查找模板。

     var t = from e1 in wlnResponse.Elements()
                    where e1.Name.ToString() == "templates"
                    select e1;

【问题讨论】:

    标签: c# xml xelement


    【解决方案1】:

    我建议在将 templates XElement 添加到文档之前将其存储在变量中:

    XElement templates = new XElement("templates");
    Response.Add(templates );
    

    然后用它来添加模板:

    var t = from e1 in wlnResponse.Elements()
            where e1.Name.ToString() == "templates"
            select e1;
    
    templates.Add(t.ToArray());
    

    【讨论】:

    • 你的意思是templates.Add(t.ToArray());
    • @svick 当然!只是之前基于foreach 的解决方案的一个错字。
    【解决方案2】:

    你试过XElement.Add的方法吗?

    来自MSDN

    此方法在 XContainer 的现有内容之后添加新内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多