Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Компилятор Visual Basic включает только значительные символы пробелов из XML-литерала при создании объекта LINQ to XML. Незначительные символы пробела не включены.
Значительный и незначительный пробел
Символы пробелов в XML-литералах важны только в трех областях:
Если они находятся в значении атрибута.
Если они являются частью текстового содержимого элемента, а текст также содержит другие символы.
Когда они находятся в встроенном выражении в текстовом содержимом элемента.
В противном случае компилятор обрабатывает символы пробела как незначительные и не включает их в объект LINQ to XML, связанный с содержимым.
Чтобы включить незначительные пробелы в XML-литерал, используйте внедренное выражение, содержащее строковый литерал с пробелами.
Замечание
xml:space
Если атрибут отображается в литерале XML-элемента, компилятор Visual Basic включает атрибут в XElement объект, но добавление этого атрибута не изменяет способ обработки пробелов компилятором.
Примеры
В следующем примере содержатся два XML-элемента, внешние и внутренние. Оба элемента содержат пробелы в текстовом содержимом. Пробелы во внешнем элементе незначительны, поскольку он содержит только пробелы и XML-элемент. Пробел во внутреннем элементе имеет значительное значение, так как он содержит пробелы и текст.
Dim example As XElement = <outer>
<inner>
Inner text
</inner>
</outer>
Console.WriteLine(example)
При запуске этот код отображает следующий текст.
<outer>
<inner>
Inner text
</inner>
</outer>