Odstęp w literałach XML (Visual Basic)
Kompilator języka Visual Basic zawiera tylko istotne znaki odstępu z literału XML podczas tworzenia obiektu LINQ to XML. Znaki nieistotnych białych znaków nie są włączone.
Znaczące i nieistotne białe znaki
Znaki odstępu w literałach XML są istotne tylko w trzech obszarach:
Gdy znajdują się one w wartości atrybutu.
Gdy są one częścią zawartości tekstowej elementu, a tekst zawiera również inne znaki.
Gdy znajdują się one w osadzonym wyrażeniu dla zawartości tekstowej elementu.
W przeciwnym razie kompilator traktuje znaki odstępu jako nieistotne i nie uwzględnia go w obiekcie LINQ to XML literału.
Aby uwzględnić nieistotne odstępy w literału XML, użyj osadzonego wyrażenia zawierającego literał ciągu z białym znakiem.
Uwaga
xml:space
Jeśli atrybut pojawia się w literale elementu XML, kompilator języka Visual Basic zawiera atrybut w XElement obiekcie, ale dodanie tego atrybutu nie zmienia sposobu traktowania białych znaków przez kompilator.
Przykłady
Poniższy przykład zawiera dwa elementy XML, zewnętrzne i wewnętrzne. Oba elementy zawierają białe znaki w zawartości tekstowej. Biały znak w elemecie zewnętrznym jest nieistotny, ponieważ zawiera tylko białe znaki i element XML. Odstęp w elemenie wewnętrznym jest znaczący, ponieważ zawiera biały znak i tekst.
Dim example As XElement = <outer>
<inner>
Inner text
</inner>
</outer>
Console.WriteLine(example)
Po uruchomieniu ten kod wyświetla następujący tekst.
<outer>
<inner>
Inner text
</inner>
</outer>