Bagikan melalui


Gambaran umum kelas XAttribute

Atribut adalah pasangan nilai nama yang terkait dengan elemen. Kelas XAttribute ini mewakili atribut XML.

Bekerja dengan atribut di LINQ ke XML mirip dengan bekerja dengan elemen. Konstruktor mereka mirip. Metode yang Anda gunakan untuk mengakses koleksi-koleksi tersebut serupa. Ekspresi kueri LINQ untuk kumpulan atribut terlihat mirip dengan ekspresi kueri LINQ untuk kumpulan elemen.

Urutan di mana atribut ditambahkan ke elemen dipertahankan. Artinya, ketika Anda melakukan iterasi melalui atribut, Anda melihatnya dalam urutan yang sama dengan yang ditambahkan.

Konstruktor XAttribute

Konstruktor kelas berikut adalah konstruktor XAttribute yang paling sering Anda gunakan:

Pembangun Deskripsi
XAttribute(XName name, object content) Membuat objek XAttribute. Argumen name menentukan nama atribut; content menentukan konten atribut.

Contoh: Membuat elemen dengan atribut

Contoh berikut menunjukkan tugas umum pembuatan elemen yang berisi atribut.

XElement phone = new XElement("Phone",
    new XAttribute("Type", "Home"),
    "555-555-5555");
Console.WriteLine(phone);
Dim phone As XElement = <Phone Type="Home">555-555-5555</Phone>
Console.WriteLine(phone)

Contoh ini menghasilkan output berikut:

<Phone Type="Home">555-555-5555</Phone>

Contoh: Konstruksi fungsi atribut

Anda dapat membuat XAttribute objek sejalan dengan konstruksi XElement objek, seperti yang ditunjukkan dalam contoh berikut:

XElement c = new XElement("Customers",
    new XElement("Customer",
        new XElement("Name", "John Doe"),
        new XElement("PhoneNumbers",
            new XElement("Phone",
                new XAttribute("type", "home"),
                "555-555-5555"),
            new XElement("Phone",
                new XAttribute("type", "work"),
                "666-666-6666")
        )
    )
);
Console.WriteLine(c);
Dim c As XElement = _
    <Customers>
        <Customer>
            <Name>John Doe</Name>
            <PhoneNumbers>
                <Phone type="home">555-555-5555</Phone>
                <Phone type="work">666-666-6666</Phone>
            </PhoneNumbers>
        </Customer>
    </Customers>
Console.WriteLine(c)

Contoh ini menghasilkan output berikut:

<Customers>
  <Customer>
    <Name>John Doe</Name>
    <PhoneNumbers>
      <Phone type="home">555-555-5555</Phone>
      <Phone type="work">666-666-6666</Phone>
    </PhoneNumbers>
  </Customer>
</Customers>

Atribut bukan node

Ada beberapa perbedaan antara atribut dan elemen. XAttribute objek bukan simpul di pohon XML. Mereka adalah pasangan nilai nama yang terkait dengan elemen XML. Berbeda dengan Model Objek Dokumen (DOM), ini lebih mencerminkan struktur XML. Meskipun XAttribute objek sebenarnya bukan simpul di pohon XML, bekerja dengan XAttribute objek mirip dengan bekerja dengan XElement objek.

Perbedaan ini terutama penting untuk pengembang yang menulis kode yang bekerja dengan pohon XML di tingkat simpul. Banyak pengembang tidak akan khawatir dengan perbedaan ini.

Lihat juga