Omówienie literały XML (Visual Basic)
Literał XML pozwala na włączenie XML bezpośrednio do sieci Visual Basic kodu. Reprezentuje składni literału XML LINQ to XML obiektów, a jest podobna do składni XML 1.0. Ta funkcja ułatwia programistyczne tworzenie elementów XML i dokumentów, ponieważ kod ma taką samą strukturę jak końcowe XML.
Visual Basickompiluje literały XML do LINQ to XML obiektów.LINQ to XMLudostępnia model prosty obiekt do tworzenia i manipulowania XML i model ten doskonale współpracuje z Language-Integrated Query (LINQ).Aby uzyskać więcej informacji, zobacz XElement.
Można osadzić Visual Basic wyrażenie w literał XML.W czasie wykonywania, aplikacja tworzy LINQ to XML obiektu dla każdego literał, zawierające wartości wyrażeń osadzonych.Pozwala to określić zawartość dynamiczną wewnątrz literał XML.Aby uzyskać więcej informacji, zobacz Osadzone wyrażenia w języku XML (Visual Basic).
Aby uzyskać więcej informacji o różnicach między składni literału XML i składni XML 1.0, zobacz XML literały i XML 1.0 specyfikacji (Visual Basic).
Literały proste
Można utworzyć LINQ to XML obiekt w sieci Visual Basic kod, wpisując go ręcznie lub wklejając w prawidłowym kodem XML.Zwraca wartość literału elementu XML XElement obiektu.Aby uzyskać więcej informacji, zobacz Literał Element XML (Visual Basic) i XML literały i XML 1.0 specyfikacji (Visual Basic).Poniższy przykład tworzy element XML, który ma kilka elementów podrzędnych.
Dim contact1 As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Dokument XML można utworzyć przez uruchomienie XML literału z <?xml version="1.0"?>, jak pokazano w poniższym przykładzie.Zwraca wartość literału dokumentu XML XDocument obiektu.Aby uzyskać więcej informacji, zobacz Literał dokumentu XML (Visual Basic).
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>
[!UWAGA]
Składni literału XML w Visual Basic nie jest identyczna ze składnią w specyfikacji XML 1.0.Aby uzyskać więcej informacji, zobacz XML literały i XML 1.0 specyfikacji (Visual Basic).
Kontynuacji wiersza
Literał XML może obejmować wiele wierszy, bez używania znaków kontynuacji wiersza (Kolejność wprowadź podkreślenia miejsca).Ta funkcja ułatwia porównanie literały XML w kodzie z dokumentami XML.
Kompilator traktuje znaki kontynuacji wiersza jako część literał XML.W związku z tym, należy używać sekwencji wprowadź podkreślenia miejsce tylko wtedy, gdy należy w LINQ to XML obiektu.
Jednak konieczne znaki kontynuacji wiersza, jeśli w wyrażeniu osadzone wielowierszowe wyrażenie.Aby uzyskać więcej informacji, zobacz Osadzone wyrażenia w języku XML (Visual Basic).
Osadzanie kwerend w literały XML
Kwerendę można użyć w wyrażeniu osadzonych.Po wykonaniu tej czynności elementy zwracane przez kwerendy są dodawane do elementu XML.Dzięki temu można dodawać zawartość dynamiczną, takich jak wynik kwerendy użytkownika do literał XML.
Na przykład, następujący kod używa kwerendy osadzone do tworzenia elementów XML od członków phoneNumbers2 array, a następnie dodać te elementy jako dzieci contact2.
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
W jaki sposób kompilator tworzy obiekty z literały XML
Visual Basic Kompilator tłumaczy literały XML na równoważne wywołania LINQ to XML konstruktory do zbudowania LINQ to XML obiektu.Na przykład Visual Basic kompilator będzie tłumaczenia w poniższym przykładzie kodu na wywołanie do XProcessingInstruction konstruktora dla instrukcji wersji XML, wzywa do XElement konstruktora dla <contact>, <name>, i <phone> elementów i wzywa do XAttribute konstruktora dla type atrybut.W szczególności, biorąc pod uwagę atrybuty w następującym przykładzie, Visual Basic kompilator będzie wywoływać XAttribute(XName, Object) dwa razy konstruktora.Pierwszy będzie przekazać wartość type do name parametru i wartości home do value parametru.Drugi będzie również przekazać wartość type do name parametr, ale wartość work do value parametru.
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>
Zobacz też
Informacje
Literał dokumentu XML (Visual Basic)
Literał Element XML (Visual Basic)
Koncepcje
Osadzone wyrażenia w języku XML (Visual Basic)