Практическое руководство. Внедрение выражений в XML-литералы
Обновлен: Ноябрь 2007
Можно объединять XML-литералы с внедренными выражениями для создания XML-документа, фрагмента или элемента, содержащего содержимое созданное во время выполнения. Следующие примеры демонстрируют, как использовать внедренные выражения для заполнения содержимого элемента, атрибутов и имен элементов во время выполнения.
Синтаксис для встроенных выражений это <%=exp%>, который совпадает с синтаксисом, используемым в ASP.NET. Дополнительные сведения см. в разделе Встроенные выражения в XML.
Для создания объектов LINQ to XML можно также использовать интерфейс API LINQ to XML. Дополнительные сведения см. в разделе XElement.
Процедуры
Вставка текста в качестве содержимого элемента
Ниже приведен пример того, как вставить текст, содержащийся в переменной contactName между открывающими и закрывающими элементами имени.
Dim contactName As String = "Patrick Hines" Dim contact As XElement = _ <contact> <name><%= contactName %></name> </contact> Console.WriteLine(contact)
В этом примере получается следующий результат:
<contact> <name>Patrick Hines</name> </contact>
Вставка текста в качестве значения атрибута
Ниже приведен пример того, как вставить текст, содержащийся в переменной phoneType в качестве значения атрибута type.
Dim phoneType As String = "home" Dim contact2 As XElement = _ <contact> <phone type=<%= phoneType %>>206-555-0144</phone> </contact> Console.WriteLine(contact2)
В этом примере получается следующий результат:
<contact> <phone type="home">206-555-0144</phone> </contact>
Вставка текста для имени элемента
Ниже приведен пример того, как вставить текст, содержащийся в переменной elementName в качестве имени элемента.
При создании элементов с помощью этого приема, необходимо завершить их с помощью тега </>.
Dim elementName As String = "contact" Dim contact3 As XElement = _ <<%= elementName %>> <name>Patrick Hines</name> </> Console.WriteLine(contact3)
В этом примере получается следующий результат:
<contact> <name>Patrick Hines</name> </contact>
См. также
Задачи
Практическое руководство. Создание XML-литералов (Visual Basic)