Literał elementu XML (Visual Basic)
Literał, który reprezentuje XElement obiektu.
<name [ attributeList ] />
-or-
<name [ attributeList ] > [ elementContents ] </[ name ]>
Części
Termin |
Definicja |
||||||||
< |
Wymagane.Otwiera tag początkowy elementu. |
||||||||
name |
Wymagane.Nazwa elementu.Format jest jedną z następujących czynności:
|
||||||||
attributeList |
Opcjonalne.Lista atrybutów zadeklarowane w literał. attribute [ attribute ... ] Każdy attribute o jednym z następujących składni:
|
||||||||
/> |
Opcjonalne.Wskazuje, że element ten jest pusty element, bez zawartości. |
||||||||
> |
Wymagane.Kończy się w tagu elementu początkową lub pusty. |
||||||||
elementContents |
Opcjonalne.Zawartość elementu. content [ content ... ] Każdy content może być jedną z następujących czynności:
|
||||||||
</[name]> |
Opcjonalne.Reprezentuje zamykający znacznik dla elementu.Opcjonalny name parametr nie jest dopuszczalna, gdy jest wynikiem wyrażenia osadzonych. |
Wartość zwracana
XElement Obiektu.
Uwagi
Można użyć składni literału elementu XML do tworzenia XElement obiektów w kodzie.
[!UWAGA]
Literał XML może obejmować wiele wierszy, bez używania znaków kontynuacji wiersza.Ta funkcja umożliwia kopiowanie zawartooci dokumentu XML i wklej go bezpośrednio do Visual Basic programu.
Osadzone wyrażeń formularza <%=exp%> umożliwiają dodanie dynamicznych informacji do literału elementu XML. Aby uzyskać więcej informacji, zobacz Wyrażenia osadzone w XML (Visual Basic).
Visual Basic Kompilatora konwertuje literału elementu XML do wywołania #ctor konstruktora i, jeśli jest to wymagane, #ctor konstruktora.
Przestrzenie nazw XML
Prefiksy obszarów nazw XML są przydatne, gdy trzeba utworzyć literałów XML z elementami z tej samej przestrzeni nazw wiele razy w kodzie.Można użyć globalnego prefiksy obszarów nazw XML, które definiują za pomocą Imports instrukcji lub prefiksy lokalne, które można zdefiniować za pomocą xmlns:xmlPrefix= "xmlNamespace" składni atrybutu.Aby uzyskać więcej informacji, zobacz Imports — Instrukcja (przestrzeń nazw XML).
Zgodnie z regułami zakresu dla obszarów nazw XML prefiksy lokalne mają pierwszeństwo przed globalnych prefiksów.Jednakże jeśli literał XML definiuje przestrzeni nazw XML, tego obszaru nazw nie jest dostępna dla wyrażeń, które pojawiają się w wyrażeniach osadzonych.Wyrażenie osadzonych można uzyskać dostęp tylko globalnego nazw XML.
Visual Basic Kompilatora konwertuje każdego globalnej przestrzeni nazw XML używanego przez literał XML w jednej definicji lokalnego obszaru nazw w generowanym kodzie.Globalnej przestrzeni nazw XML, które nie są używane, nie są wyświetlane w generowanym kodzie.
Przykład
Poniższy przykład przedstawia sposób tworzenia prostego elementu XML, który ma dwa zagnieżdżone pustych elementów.
Dim test1 As XElement =
<outer>
<inner1></inner1>
<inner2/>
</outer>
Console.WriteLine(test1)
W przykładzie zostanie wyświetlony następujący tekst.Należy zauważyć, że literał zachowuje strukturę pustych elementów.
<outer>
<inner1></inner1>
<inner2 />
</outer>
Poniższy przykład pokazuje sposób użycia wyrażeń osadzone do nazwy elementu i utworzyć atrybutów.
Dim elementType = "book"
Dim authorName = "My Author"
Dim attributeName1 = "year"
Dim attributeValue1 = 1999
Dim attributeName2 = "title"
Dim attributeValue2 = "My Book"
Dim book As XElement =
<<%= elementType %>
isbn="1234"
author=<%= authorName %>
<%= attributeName1 %>=<%= attributeValue1 %>
<%= New XAttribute(attributeName2, attributeValue2) %>
/>
Console.WriteLine(book)
Ten kod wyświetla następujący tekst:
<book isbn="1234" author="My Author" year="1999" title="My Book" />
Poniższy przykład deklaruje ns jako prefiks obszaru nazw XML.Następnie używa prefiks obszaru nazw, aby utworzyć literał XML i wyświetla element ostatecznej postaci.
' Place Imports statements at the top of your program.
Imports <xmlns:ns="http://SomeNamespace">
Class TestClass1
Shared Sub TestPrefix()
' Create test using a global XML namespace prefix.
Dim inner2 = <ns:inner2/>
Dim test =
<ns:outer>
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1/>
<%= inner2 %>
</ns:middle>
</ns:outer>
' Display test to see its final form.
Console.WriteLine(test)
End Sub
End Class
Ten kod wyświetla następujący tekst:
<ns:outer xmlns:ns="http://SomeNamespace">
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1 />
<inner2 xmlns="http://SomeNamespace" />
</ns:middle>
</ns:outer>
Należy zauważyć, że kompilator przekształconych prefiks globalny obszar nazw XML definicji prefiks obszaru nazw XML.<ns:middle> element na nowo definiuje pojęcie prefiks obszaru nazw XML dla <ns:inner1> element.Jednakże <ns:inner2> element używa obszaru nazw, zdefiniowany przez Imports instrukcji.
Zobacz też
Informacje
Literał komentarza XML (Visual Basic)
Literał CDATA XML (Visual Basic)
Imports — Instrukcja (przestrzeń nazw XML)
Koncepcje
Nazwy deklarowanych elementów XML oraz atrybuty (Visual Basic)
Wyrażenia osadzone w XML (Visual Basic)