Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Literál, který představuje XElement objekt.
Syntaxe
<name [ attributeList ] />
-or-
<name [ attributeList ] > [ elementContents ] </[ name ]>
Součástky
<Povinné. Otevře počáteční značku prvku.
namePovinné. Název elementu. Formát je jeden z následujících způsobů:
Text literálu pro název elementu formuláře
[ePrefix:]eName, kde:Část Popis ePrefixVolitelný. Předpona oboru názvů XML pro element Musí být globální obor názvů XML, který je definován příkazem Importsv souboru nebo na úrovni projektu, nebo místní obor názvů XML, který je definován v tomto elementu nebo nadřazený element.eNamePovinné. Název elementu. Formát je jeden z následujících způsobů:
- Literálový text. Viz názvy deklarovaných elementů a atributů XML.
- Vložený výraz formuláře<%= eNameExp %>. TypeNameExpmusí býtStringnebo typ, který se implicitně konvertibilní na XName.Vložený výraz formuláře
<%= nameExp %>. TypnameExpmusí býtStringnebo typ implicitně konvertibilní na XName. Vložený výraz není povolen ve koncové značce elementu.
attributeListVolitelný. Seznam atributů deklarovaných v literálu
attribute [ attribute ... ]Každá
attributez nich má jednu z následujících syntaxí:Přiřazení atributu formuláře
[aPrefix:]aName=aValue, kde:Část Popis aPrefixVolitelný. Předpona oboru názvů XML pro atribut Musí být globální obor názvů XML, který je definován příkazem Imports, nebo místní obor názvů XML, který je definován v tomto elementu nebo nadřazený element.aNamePovinné. Název atributu Formát je jeden z následujících způsobů:
- Literálový text. Viz názvy deklarovaných elementů a atributů XML.
- Vložený výraz formuláře<%= aNameExp %>. TypaNameExpmusí býtStringnebo typ, který se implicitně konvertibilní na XName.aValueVolitelný. Hodnota atributu. Formát je jeden z následujících způsobů:
- Literálový text uzavřený do uvozovek.
- Vložený výraz formuláře<%= aValueExp %>. Jakýkoli typ je povolený.Vložený výraz formuláře
<%= aExp %>.
/>Volitelný. Označuje, že prvek je prázdný prvek bez obsahu.
>Povinné. Ukončí počáteční nebo prázdnou značku elementu.
elementContentsVolitelný. Obsah prvku
content [ content ... ]Každá
contentz nich může být jedna z následujících možností:Literálový text. Všechny prázdné znaky
elementContentsse stanou významnými, pokud existuje nějaký literálový text.Vložený výraz formuláře
<%= contentExp %>.Literál elementu XML.
Literál komentáře XML. Viz Literál komentáře XML.
Literál instrukce zpracování XML. Viz Literál instrukce zpracování XML.
Literál CDATA XML. Viz literál XML CDATA.
</[name]>Volitelný. Představuje pravou značku prvku. Volitelný
nameparametr není povolen, pokud je výsledkem vloženého výrazu.
Návratová hodnota
Objekt XElement .
Poznámky
K vytvoření XElement objektů v kódu můžete použít syntaxi literálu elementu XML.
Poznámka:
Literál XML může obsahovat více řádků bez použití znaků pokračování řádku. Tato funkce umožňuje kopírovat obsah z dokumentu XML a vložit ho přímo do programu jazyka Visual Basic.
Vložené výrazy formuláře <%= exp %> umožňují přidat dynamické informace do literálu elementu XML. Další informace naleznete v tématu Vložené výrazy v JAZYCE XML.
Kompilátor jazyka Visual Basic převede literál elementu XML na volání konstruktoru XElement a v případě potřeby konstruktor.XAttribute
Jmenné prostory XML
Předpony oboru názvů XML jsou užitečné, když potřebujete vytvořit literály XML s elementy ze stejného oboru názvů mnohokrát v kódu. Můžete použít globální předpony oboru názvů XML, které definujete pomocí Imports příkazu nebo místních předpon, které definujete pomocí syntaxe atributu xmlns:xmlPrefix="xmlNamespace" . Další informace naleznete v tématu Import – příkaz (obor názvů XML).
V souladu s pravidly oborů oboru názvů XML mají místní předpony přednost před globálními předponami. Pokud však literál XML definuje obor názvů XML, tento obor názvů není k dispozici pro výrazy, které se zobrazí ve vloženém výrazu. Vložený výraz má přístup pouze k globálnímu oboru názvů XML.
Kompilátor jazyka Visual Basic převede každý globální obor názvů XML používaný literálem XML na jednu místní definici oboru názvů v generovaném kódu. Globální obory názvů XML, které se nepoužívají, se ve vygenerovaném kódu nezobrazují.
Příklad 1
Následující příklad ukazuje, jak vytvořit jednoduchý xml element, který má dva vnořené prázdné elementy.
Dim test1 As XElement =
<outer>
<inner1></inner1>
<inner2/>
</outer>
Console.WriteLine(test1)
V příkladu se zobrazí následující text. Všimněte si, že literál zachovává strukturu prázdných prvků.
<outer>
<inner1></inner1>
<inner2 />
</outer>
Příklad 2
Následující příklad ukazuje, jak použít vložené výrazy k pojmenování elementu a vytvoření atributů.
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)
Tento kód zobrazí následující text:
<book isbn="1234" author="My Author" year="1999" title="My Book" />
Příklad 3
Následující příklad deklaruje ns jako předponu oboru názvů XML. Potom použije předponu oboru názvů k vytvoření literálu XML a zobrazí konečný formulář elementu.
' 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
Tento kód zobrazí následující text:
<ns:outer xmlns:ns="http://SomeNamespace">
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1 />
<inner2 xmlns="http://SomeNamespace" />
</ns:middle>
</ns:outer>
Všimněte si, že kompilátor převednul předponu globálního oboru názvů XML na definici předpony pro obor názvů XML. Element <ns:middle> předefinuje předponu oboru názvů XML pro <element ns:inner1> . Nicméně ns <:inner2> element používá obor názvů definovaný příkazem Imports .