Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Öznitelikler, bir öğeyle ilişkili ad-değer çiftleridir. XAttribute sınıfı XML özniteliklerini temsil eder.
LINQ to XML içindeki özniteliklerle çalışmak, öğelerle çalışmaya benzer. Oluşturucuları benzerdir. Koleksiyonlarını almak için kullandığınız yöntemler benzerdir. Öznitelik koleksiyonu için LINQ sorgu ifadesi, bir öğe koleksiyonu için LINQ sorgu ifadesine benzer.
Bir öğeye özniteliklerin eklenme sırası korunur. Başka bir ifadeyle, öznitelikler arasında yineleme yaptığınızda, bunları eklendikleri sırada görürsünüz.
XAttribute oluşturucu
Kullanacağınız en yaygın yapıcı XAttribute sınıfının aşağıdaki oluşturucusudur.
| Yapıcı | Açıklama |
|---|---|
XAttribute(XName name, object content) |
bir XAttribute nesnesi oluşturur.
name bağımsız değişkeni özniteliğin adını belirtir; content özniteliğin içeriğini belirtir. |
Örnek: Özniteliği olan bir öğe oluşturma
Aşağıdaki örnekte, öznitelik içeren bir öğe oluşturmanın ortak görevi gösterilmektedir.
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)
Bu örnek aşağıdaki çıkışı oluşturur:
<Phone Type="Home">555-555-5555</Phone>
Örnek: Özniteliklerin işlevsel yapısı
XAttribute nesnelerini, aşağıdaki örnekte gösterildiği gibi, XElement nesnelerinin yapısı ile aynı hizada oluşturabilirsiniz:
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)
Bu örnek aşağıdaki çıkışı oluşturur:
<Customers>
<Customer>
<Name>John Doe</Name>
<PhoneNumbers>
<Phone type="home">555-555-5555</Phone>
<Phone type="work">666-666-6666</Phone>
</PhoneNumbers>
</Customer>
</Customers>
Öznitelikler düğüm değildir
Öznitelikler ve öğeler arasında bazı farklılıklar vardır. XAttribute nesneleri XML ağacındaki düğümler değildir. Bir XML öğesiyle ilişkili ad-değer çiftleridir. Belge Nesne Modeli'nin (DOM) aksine bu, XML'nin yapısını daha yakından yansıtır. XAttribute Nesneler aslında XML ağacındaki düğümler olmasa da, nesnelerle XAttribute çalışmak nesnelerle XElement çalışmaya benzer.
Bu ayrım öncelikli olarak yalnızca düğüm düzeyinde XML ağaçlarıyla çalışan kod yazan geliştiriciler için önemlidir. Birçok geliştirici bu ayrım ile ilgilenmeyecektir.