Cara menempatkan atribut melalui XElement

126

Saya punya kode ini:

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.

Bagaimana cara menambahkan atribut Conn? Saya ingin menambahkan atribut yang saya tandai sebagai komentar, tetapi jika saya mencoba mengatur atribut Connsetelah mendefinisikan EcnAdminConf, mereka tidak terlihat.

Saya ingin mengaturnya agar XML terlihat seperti ini:

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

Jawaban:

252

Tambahkan XAttributekonstruktor XElement, seperti

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

Anda juga dapat menambahkan beberapa atribut atau elemen melalui konstruktor

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

atau Anda dapat menggunakan Metode-Tambah XElementuntuk menambahkan atribut

XElement element = new XElement("Conn");
XAttribute attribute = new XAttribute("Server", comboBox1.Text);
element.Add(attribute);
Yah
sumber
Apakah mungkin untuk membuat daftar atau array xAttr dan menambahkan semuanya sekaligus?
greg
@reg Anda bisa menggunakan .Add () - overload untuk mengirimkan beberapa objek XAttribute ( docs.microsoft.com/de-de/dotnet/api/… )
Jehof