Visual Basic'te ad alanlarıyla belge oluşturma (LINQ to XML)

Bu makalede, Visual Basic'te ad alanları olan bir belgenin nasıl oluşturulacağı gösterilmektedir.

Visual Basic'te XML değişmez değerlerini kullanırken, kullanıcılar bir genel varsayılan XML ad alanı tanımlayabilir. Bu ad alanı, hem XML değişmez değerleri hem de XML özellikleri için varsayılan ad alanıdır. Varsayılan XML ad alanı proje düzeyinde veya dosya düzeyinde tanımlanabilir. Dosya düzeyinde tanımlanmışsa, proje düzeyinde varsayılan ad alanını geçersiz kılar.

Ayrıca diğer ad alanlarını tanımlayabilir ve bu ad alanları için ad alanı ön eklerini belirtebilirsiniz. Her iki ad alanı türünü de tanımlamak için anahtar sözcüğünü Imports kullanırsınız.

Daha fazla bilgi için bkz . Visual Basic'te XML değişmez değerleri.

Varsayılan XML ad alanının öznitelikler için değil yalnızca öğeler için geçerli olduğunu unutmayın. Öznitelikler varsayılan ad alanında varsayılan olarak bulunur. Ancak, ad alanına bir öznitelik eklemek için ad alanı ön eki kullanabilirsiniz.

Örnek: Ad alanına sahip bir belge oluşturma

Bu örnek, ad alanı içeren bir belge oluşturur.

Imports <xmlns:aw="http://www.adventure-works.com">
Module Module1
    Sub Main()
        Dim root As XElement = _
            <aw:Root>
                <aw:Child aw:Att="attvalue"/>
            </aw:Root>
        Console.WriteLine(root)
    End Sub
End Module

Bu örnek aşağıdaki çıkışı oluşturur:

<aw:Root xmlns:aw="http://www.adventure-works.com">
  <aw:Child aw:Att="attvalue" />
</aw:Root>

Örnek: Biri ön ekli olmak üzere iki ad alanına sahip bir belge oluşturma

Bu örnek, iki ad alanı içeren bir belge oluşturur. Biri varsayılan ad alanıdır, diğeri ön eke sahiptir.

Imports <xmlns="http://www.adventure-works.com">
Imports <xmlns:fc="www.fourthcoffee.com">

Module Module1

    Sub Main()
        Dim root As XElement = _
            <Root>
                <Child Att="attvalue"/>
                <fc:Child2>child2 content</fc:Child2>
            </Root>
        Console.WriteLine(root)
    End Sub

End Module

Bu örnek aşağıdaki çıkışı oluşturur:

<Root xmlns:fc="www.fourthcoffee.com" xmlns="http://www.adventure-works.com">
  <Child Att="attvalue" />
  <fc:Child2>child2 content</fc:Child2>
</Root>

Örnek: Her ikisi de ön ekli iki ad alanına sahip bir belge oluşturma

Aşağıdaki örnek, her ikisi de ad alanı ön eklerine sahip iki ad alanı içeren bir belge oluşturur.

XML ağacı serileştirilirken LINQ to XML, her öğenin belirlenen ad alanında olması için ad alanı bildirimlerini gerektiği gibi yayar.

Imports <xmlns:aw="http://www.adventure-works.com">
Imports <xmlns:fc="www.fourthcoffee.com">

Module Module1

    Sub Main()
        Dim root As XElement = _
            <aw:Root>
                <fc:Child>
                    <aw:DifferentChild>other content</aw:DifferentChild>
                </fc:Child>
                <aw:Child2>c2 content</aw:Child2>
                <fc:Child3>c3 content</fc:Child3>
            </aw:Root>
        Console.WriteLine(root)
    End Sub

End Module

Bu örnek aşağıdaki çıkışı oluşturur:

<aw:Root xmlns:fc="www.fourthcoffee.com" xmlns:aw="http://www.adventure-works.com">
  <fc:Child>
    <aw:DifferentChild>other content</aw:DifferentChild>
  </fc:Child>
  <aw:Child2>c2 content</aw:Child2>
  <fc:Child3>c3 content</fc:Child3>
</aw:Root>

Ayrıca bkz.