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.
XML değişmez değeri, XML'i doğrudan Visual Basic kodunuza entegre etmenizi sağlar. XML literal sözdizimi, LINQ to XML nesnelerini temsil eder olarak XML 1.0 sözdizimine benzer. Bu, kodunuz son XML ile aynı yapıya sahip olduğundan XML öğelerinin ve belgelerinin program aracılığıyla oluşturulmasını kolaylaştırır.
Visual Basic, XML değişmez değerlerini LINQ to XML nesnelerine derler. LINQ to XML, XML oluşturmak ve işlemek için basit bir nesne modeli sağlar ve bu model Language-Integrated Sorgusu (LINQ) ile iyi tümleştirilir. Daha fazla bilgi için bkz. XElement.
Visual Basic ifadesini bir XML literaline ekleyebilirsiniz. Çalışma zamanında uygulamanız, eklenmiş ifadelerin değerlerini içeren her sabit için bir LINQ to XML nesnesi oluşturur. Bu, bir XML değişmez değeri içinde dinamik içerik belirtmenize olanak tanır. Daha fazla bilgi için bkz . XML'de Katıştırılmış İfadeler.
XML değişmez değeri söz dizimi ile XML 1.0 söz dizimi arasındaki farklar hakkında daha fazla bilgi için bkz. XML Değişmez Değerleri ve XML 1.0 Belirtimi.
Basit Sabit Değerler
Visual Basic kodunuzda geçerli XML yazarak veya yapıştırarak LINQ to XML nesnesi oluşturabilirsiniz. XML öğesi değişmez değeri bir XElement nesne döndürür. Daha fazla bilgi için bkz. XML Öğesi Sabit Değeri ve XML Sabit Değerleri ve XML 1.0 Spesifikasyonu. Aşağıdaki örnek, birkaç alt öğe içeren bir XML öğesi oluşturur.
Dim contact1 As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Bir XML literalini <?xml version="1.0"?> ile başlatarak, aşağıdaki örnekte gösterildiği gibi bir XML belgesi oluşturabilirsiniz. XML belge literal bir XDocument nesne döndürür. Daha fazla bilgi için bkz. XML Belgesi Literal.
Dim contactDoc As XDocument =
<?xml version="1.0"?>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Uyarı
Visual Basic'teki XML değişmez değer söz dizimi, XML 1.0 belirtimindeki söz dizimiyle aynı değildir. Daha fazla bilgi için bkz. XML Sabitleri ve XML 1.0 Spesifikasyonu.
Satır Devamı
XML sabiti, satır devamlılığı karakterlerini kullanmadan birden çok satıra yayılabilir (boşluk-alt çizgi-enter birleşimi). Bu, koddaki XML değişmez değerlerini XML belgeleriyle karşılaştırmayı kolaylaştırır.
Derleyici, satır devamlılığı karakterlerini XML değişmez değeri kapsamında ele alır. Bu nedenle, boşluk-alt çizgi-enter dizisini yalnızca LINQ to XML nesnesine ait olduğu durumlarda kullanmanız gerekir.
Ancak, katıştırılmış ifadede çok satırlı bir ifadeniz varsa satır devamlılığı karakterlerine ihtiyacınız vardır. Daha fazla bilgi için bkz . XML'de Katıştırılmış İfadeler.
XML Sabit Değerlerinde Sorguları Gömme
Eklenmiş ifadede sorgu kullanabilirsiniz. Bunu yaptığınızda, sorgu tarafından döndürülen öğeler XML öğesine eklenir. Bu, kullanıcının sorgusunun sonucu gibi dinamik içeriği XML değişmez değerine eklemenize olanak tanır.
Örneğin, aşağıdaki kod, dizinin üyelerinden phoneNumbers2 XML öğeleri oluşturmak ve ardından bu öğeleri alt contact2öğeleri olarak eklemek için eklenmiş bir sorgu kullanır.
Public Class XmlSamples
Public Sub Main()
' Initialize the objects.
Dim phoneNumbers2 As Phone() = {
New Phone("home", "206-555-0144"),
New Phone("work", "425-555-0145")}
' Convert the data contained in phoneNumbers2 to XML.
Dim contact2 =
<contact>
<name>Patrick Hines</name>
<%= From p In phoneNumbers2
Select <phone type=<%= p.Type %>><%= p.Number %></phone>
%>
</contact>
Console.WriteLine(contact2)
End Sub
End Class
Class Phone
Public Type As String
Public Number As String
Public Sub New(ByVal t As String, ByVal n As String)
Type = t
Number = n
End Sub
End Class
Derleyici XML Literallerinden Nesneleri Nasıl Oluşturur?
Visual Basic derleyicisi, XML değişmez değerlerini eşdeğer LINQ to XML oluşturucularına çağrı olarak çevirerek bu şekilde LINQ to XML nesnesini oluşturur. Örneğin, Visual Basic derleyicisi aşağıdaki kod örneğini, XML sürümü yönergesi için XProcessingInstruction oluşturucusuna, XElement, <contact> ve <name> öğeleri için <phone> oluşturucusuna ve XAttribute özniteliği için type oluşturucusuna çağrılar olarak çevirecektir. Özellikle, aşağıdaki örnekteki öznitelikler göz önüne alındığında, Visual Basic derleyicisi oluşturucuyu XAttribute(XName, Object) iki kez çağırır. İlki type parametresi için name değerini ve home parametresi için value değerini geçirecektir. İkincisi type parametresi için name değerini ve work parametresi için value değerini geçirecek.
Dim contactDoc As XDocument =
<?xml version="1.0"?>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>