Sdílet prostřednictvím


Vložený výrazy v jazyce XML (Visual Basic)

Vložený výrazy umožňují vytvoření literálů XML, které obsahují výrazy, které jsou vyhodnocovány v době spuštění.Syntaxe pro vložený výraz je <%=expression%>, která je stejná syntaxe používané v ASP.NET.  

Například můžete vytvořit prvek XML literálu, kombinování obsahu Doslovný text vložený výrazy.

Dim isbnNumber As String = "12345"
Dim modifiedDate As String = "3/5/2006"
Dim book As XElement = 
    <book category="fiction" isbn=<%= isbnNumber %>>
        <modifiedDate><%= modifiedDate %></modifiedDate>
    </book>

Pokud isbnNumber obsahuje celé číslo 12345 a modifiedDate obsahuje datum 3/5/2006, pokud tento kód provede, hodnota book je:

<book category="fiction" isbn="12345">
  <modifiedDate>3/5/2006</modifiedDate>
</book>

Umístění vloženého výraz a ověření

Vložený výrazy mohou objevit pouze na určitých místech v rámci XML literálové výrazy.Ovládací prvky výrazu umístění, které typy výrazu můžete vrátit a jak Nothing je zpracována.Následující tabulka popisuje povolené umístění a typů vložených výrazů.

Umístění v literál

Typ výrazu

ZpracováníNothing

Název prvku XML

XName

Chyba

Obsah prvku XML

Objectnebo poleObject

Ignorováno

Název atributu prvek XML

XName

Chyba, pokud je hodnota atributuNothing

Hodnota atributu prvek XML

Object

Deklarace atributu ignorována

Atribut elementu XML

XAttributenebo kolekceXAttribute

Ignorováno

Kořenovým prvkem dokumentu XML

XElementnebo kolekci jednoho XElement objektu a libovolný počet XProcessingInstruction a XComment objektů

Ignorováno

  • Příklad výrazu vložený v název prvku XML:

    Dim elementName As String = "contact"
    Dim contact1 As XElement = <<%= elementName %>/>
    
  • Příklad výrazu vložený v obsahu prvku XML:

    Dim contactName As String = "Patrick Hines"
    Dim contact2 As XElement = 
      <contact><%= contactName %></contact>
    
  • Příklad výrazu vložených v prvku název atributu XML:

    Dim phoneType As String = "home"
    Dim contact3 As XElement = 
      <contact <%= phoneType %>="206-555-0144"/>
    
  • Příklad vložený výraz v hodnotě atributu element XML:

    Dim phoneNumber As String = "206-555-0144"
    Dim contact4 As XElement = 
      <contact home=<%= phoneNumber %>/>
    
  • Příklad výrazu vložených v prvku atribut XML:

    Dim phoneAttribute As XAttribute = 
      New XAttribute(XName.Get(phoneType), phoneNumber)
    Dim contact5 As XElement = 
      <contact <%= phoneAttribute %>/>
    
  • Příklad výrazu vložený v kořenový prvek dokumentu XML:

    Dim document As XDocument = 
      <?xml version="1.0"?><%= contact1 %>
    

Pokud povolíte Option Strict, kompilátor zkontroluje, že každý vložený výraz typu rozšiřuje na požadovaný typ.Jedinou výjimkou je kořenový prvek dokumentu XML, který je ověřen při spuštění kódu.Pokud kompilovat bez Option Strict, můžete vložit výrazy typu Object a ověřuje jejich typu v době spuštění.

V místech, kde je obsah volitelné výrazy, které obsahují vložené Nothing jsou ignorovány.To znamená, není nutné zkontrolovat obsah prvku dané hodnoty atributů a elementů pole nejsou Nothing před použitím literál XML.Požadované hodnoty, například názvy prvků a atributů, nemůže být Nothing.

Další informace o použití určitého typu literál vložený výraz naleznete Literál dokumentu XML (Visual Basic), Literál prvek XML (Visual Basic).

Pravidla oboru

Kompilátor převede každý literál XML volání konstruktoru pro příslušný typ literálu.Obsah literálu a vložených výrazů literál XML jsou předány jako argumenty konstruktoru.To znamená, že všechny Visual Basic programovací prvky literál XML k dispozici jsou také k dispozici na jeho vloženého výrazy.

V rámci literál XML, můžete přístup předpony deklarována s obor názvů XML Imports prohlášení.Deklarovat nové prefix oboru názvů XML nebo předponu existující obor názvů XML v prvku pomocí stínu xmlns atributu.Nový obor názvů je k dispozici, podřízené uzly prvku, ale nikoli literály XML ve vložených výrazů.

[!POZNÁMKA]

Když deklarujete pomocí předponu oboru názvů XML xmlns atribut namespace, hodnota atributu musí být konstantní řetězec.V tomto ohledu pomocí xmlns atributu se podobá použití Imports prohlášení deklarovat jmenný prostor XML.Určete hodnotu pro obor názvů XML nelze použít vložený výraz.

Viz také

Referenční dokumentace

Literál dokumentu XML (Visual Basic)

Literál prvek XML (Visual Basic)

Možnost přísné prohlášení

Importuje příkaz (.NET oboru názvů a typ)

Koncepty

Přehled literály XML (Visual Basic)

Další zdroje

Vytvoření XML v jazyce Visual Basic