DOM'daki öğeler için yeni öznitelikler oluşturma

Öznitelikler düğüm olmadığından yeni öznitelikler oluşturmak diğer düğüm türlerini oluşturmaktan farklıdır. Bunlar bir öğe düğümünün özellikleridir ve öğesiyle ilişkilendirilmiş bir XmlAttributeCollection içinde yer alır. Öznitelik oluşturmanın ve bir öğeye eklemenin birden çok yolu vardır:

  • Öğe düğümünü alın ve setAttribute kullanarak bu öğenin öznitelik koleksiyonuna bir öznitelik ekleyin.

  • CreateAttribute yöntemini kullanarak bir XmlAttribute düğümü oluşturun, öğe düğümünü alın, ardından düğümü bu öğenin öznitelik koleksiyonuna eklemek için SetAttributeNode kullanın.

Aşağıdaki örnekte, SetAttribute yöntemini kullanarak bir öğeye özniteliğin nasıl ekleneceği gösterilmektedir:

Imports System.IO
Imports System.Xml

Public Class Sample

    Public Shared Sub Main()

        Dim doc As New XmlDocument()
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "</book>")
        Dim root As XmlElement = doc.DocumentElement

        ' Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel")

        Console.WriteLine("Display the modified XML...")
        Console.WriteLine(doc.InnerXml)
    End Sub
End Class
using System;
using System.IO;
using System.Xml;

public class Sample
{
    public static void Main()
    {
        var doc = new XmlDocument();
        doc.LoadXml("<book xmlns:bk='urn:samples' bk:ISBN='1-861001-57-5'>" +
                    "<title>Pride And Prejudice</title>" +
                    "</book>");
        XmlElement root = doc.DocumentElement;

        // Add a new attribute.
        root.SetAttribute("genre", "urn:samples", "novel");

        Console.WriteLine("Display the modified XML...");
        Console.WriteLine(doc.InnerXml);
    }
}

Aşağıdaki örnekte CreateAttribute yöntemini kullanarak yeni bir özniteliğin nasıl oluşturulacağı gösterilmektedir. Daha sonra özniteliği, SetAttributeNode yöntemi kullanılarak book öğesinin öznitelik koleksiyonuna eklenir.

Aşağıdaki XML göz önünde bulundurulduğunda:

<book genre='novel' ISBN='1-861001-57-5'>
<title>Pride And Prejudice</title>
</book>

Yeni bir öznitelik oluşturun ve bir değer verin:

Dim attr As XmlAttribute = doc.CreateAttribute("publisher")
attr.Value = "WorldWide Publishing"
XmlAttribute attr = doc.CreateAttribute("publisher");
attr.Value = "WorldWide Publishing";

özniteliğini öğesine ekleyin:

doc.DocumentElement.SetAttributeNode(attr)
doc.DocumentElement.SetAttributeNode(attr);

Çıktı

<book genre="novel" ISBN="1-861001-57-5" publisher="WorldWide Publishing">
<title>Pride And Prejudice</title>
</book>

Kod örneğinin tamamı adresinde CreateAttributebulunabilir.

Öznitelikler için bir XmlNamedNodeMap oluşturduysanız yöntemini kullanarak SetNamedItem ada göre bir öznitelik ekleyebilirsiniz. Daha fazla bilgi için bkz. NamedNode Haritalar ve NodeLists'teki Düğüm Koleksiyonları.

Varsayılan öznitelikler

Varsayılan özniteliğe sahip olduğu bildirilen bir öğe oluşturursanız, XML Belge Nesne Modeli (DOM) tarafından varsayılan değerine sahip yeni bir varsayılan öznitelik oluşturulur ve öğesine eklenir. Varsayılan özniteliğin alt düğümleri de şu anda oluşturulur.

Öznitelik alt düğümleri

Bir öznitelik düğümünün değeri alt düğümleri olur. Yalnızca iki tür geçerli alt düğüm vardır: XmlText düğümleri ve XmlEntityReference düğümleri. Bunlar, FirstChild ve LastChild gibi yöntemlerin bunları alt düğüm olarak işlemesi anlamında alt düğümlerdir. Öznitelikleri veya öznitelik alt düğümlerini kaldırmaya çalışırken alt düğümlere sahip bir özniteliğin bu ayrımı önemlidir. Daha fazla bilgi için bkz . DOM'daki Bir Öğe Düğümünden Öznitelikleri Kaldırma.

Ayrıca bkz.