XElement aracılığıyla nitelikler nasıl yerleştirilir


126

Bu koda sahibim:

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.

Öğesine nasıl nitelik eklerim Conn? Yorum olarak işaretlediğim öznitelikleri eklemek istiyorum, ancak öznitelikleri Conntanımladıktan sonra açmaya çalışırsam EcnAdminConfgörünmezler.

Bunları bir şekilde ayarlamak istiyorum, böylece XML şöyle görünecek:

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

Yanıtlar:


252

Gibi XAttributeyapıcısını ekleyinXElement

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

Ayrıca yapıcı aracılığıyla birden çok nitelik veya öğe ekleyebilirsiniz.

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

veya XElementöznitelik eklemek için Eklenti Yöntemini kullanabilirsiniz

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

Bir xAttr listesi veya dizisi oluşturmak ve hepsini aynı anda eklemek mümkün müdür?
greg

@greg birden çok XAttribute nesnesine geçmek için .Add () - aşırı yüklemesini kullanabilirsiniz ( docs.microsoft.com/de-de/dotnet/api/… )
Jehof
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.