如何通过XElement放置属性


126

我有以下代码:

XElement EcnAdminConf = new XElement("Type",
    new XElement("Connections",
    new XElement("Conn"),
    // Conn.SetAttributeValue("Server", comboBox1.Text);
    // Conn.SetAttributeValue("DataBase", comboBox2.Text))),
    new XElement("UDLFiles")));
    // Conn.

如何添加属性Conn?我想添加标记为注释的属性,但是如果Conn在定义后尝试将其设置为on EcnAdminConf,则这些属性将不可见。

我想以某种方式设置它们,以便XML看起来像这样:

<Type>
  <Connections>
    <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> 
    <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> 
  </Connections>
  <UDLFiles /> 
</Type>

Answers:


252

添加XAttribute的构造函数XElement,例如

new XElement("Conn", new XAttribute("Server", comboBox1.Text));

您还可以通过构造函数添加多个属性或元素

new XElement("Conn", new XAttribute("Server", comboBox1.Text), new XAttribute("Database", combobox2.Text));

或者您可以使用的Add-Method XElement添加属性

XElement element = new XElement("Conn");
XAttribute attribute = new XAttribute("Server", comboBox1.Text);
element.Add(attribute);

是否可以构建xAttr的列表或数组并一次添加它们?
greg19年

@格雷格,你可以使用。新增() -超载多XAttribute传递对象(docs.microsoft.com/de-de/dotnet/api/...
Jehof
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.