XmlDocument.CreateNode Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает объект XmlNode.
Перегрузки
| Имя | Описание |
|---|---|
| CreateNode(String, String, String) |
Создает объект с указанным типом XmlNode узла и NameNamespaceURI. |
| CreateNode(XmlNodeType, String, String) |
XmlNode Создает объект с указанным XmlNodeType, Nameи NamespaceURI. |
| CreateNode(XmlNodeType, String, String, String) |
XmlNode Создает объект с указанным XmlNodeType, Prefixи NameNamespaceURI. |
CreateNode(String, String, String)
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
Создает объект с указанным типом XmlNode узла и NameNamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::String ^ nodeTypeString, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode(string nodeTypeString, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode(string nodeTypeString, string name, string? namespaceURI);
abstract member CreateNode : string * string * string -> System.Xml.XmlNode
override this.CreateNode : string * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (nodeTypeString As String, name As String, namespaceURI As String) As XmlNode
Параметры
- nodeTypeString
- String
Строка версии XmlNodeType нового узла. Этот параметр должен быть одним из значений, перечисленных в таблице ниже.
- name
- String
Полное имя нового узла. Если имя содержит двоеточие, он анализируется и PrefixLocalName выполняется анализ компонентов.
- namespaceURI
- String
URI пространства имен нового узла.
Возвращаемое значение
Новый XmlNode.
Исключения
Имя не было указано и XmlNodeType требуется имя; или nodeTypeString не является одной из строк, перечисленных ниже.
Примеры
В следующем примере создается новый элемент и он вставляется в документ.
using System;
using System.Xml;
public class Sample {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book>" +
" <title>Oberon's Legacy</title>" +
" <price>5.95</price>" +
"</book>");
// Create a new element node.
XmlNode newElem = doc.CreateNode("element", "pages", "");
newElem.InnerText = "290";
Console.WriteLine("Add the new element to the document...");
XmlElement root = doc.DocumentElement;
root.AppendChild(newElem);
Console.WriteLine("Display the modified XML document...");
Console.WriteLine(doc.OuterXml);
}
}
Imports System.Xml
public class Sample
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<book>" & _
" <title>Oberon's Legacy</title>" & _
" <price>5.95</price>" & _
"</book>")
' Create a new element node.
Dim newElem as XmlNode = doc.CreateNode("element", "pages", "")
newElem.InnerText = "290"
Console.WriteLine("Add the new element to the document...")
Dim root as XmlElement = doc.DocumentElement
root.AppendChild(newElem)
Console.WriteLine("Display the modified XML document...")
Console.WriteLine(doc.OuterXml)
end sub
end class
Комментарии
Параметр nodeTypeString учитывает регистр и должен быть одним из значений в следующей таблице.
| nodeTypeString | XmlNodeType |
|---|---|
| атрибут | Атрибут |
| cdatasection | CDATA |
| Комментарий | Комментарий |
| документ | Документ |
| documentfragment | DocumentFragment |
| тип документа | Тип документа |
| элемент | Элемент |
| Entityreference | EntityReference |
| обработка структуры | Инструкция по обработке |
| значительное пространствоwhitespace | ЗначащиеПробелы (SignificantWhitespace) |
| text | Text |
| пробел | Пробелы |
Хотя этот метод создает новый объект в контексте документа, он не автоматически добавляет новый объект в дерево документов. Чтобы добавить новый объект, необходимо явно вызвать один из методов вставки узла.
В следующей таблице показано, что NodeType[row] разрешено в другом узле NodeType[column] в соответствии с рекомендацией W3C Extensible Markup Language (XML) 1.0.
| Тип узла | Документ | Тип документа | Объявление XML | Элемент | Атрибут | Text | CDATA | Разметка | EntityReference |
|---|---|---|---|---|---|---|---|---|---|
Document |
Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
DocumentType |
да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
XmlDeclaration |
Да* | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Element |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Attribute |
Нет | Нет | Нет | Да! | Нет | Нет | Нет | Нет | Нет |
Text |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
CDATA |
Нет | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Markup
§ |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Нет |
EntityReference |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
* Узел XmlDeclaration должен быть первым дочерним элементом узла Document.
§ Markup включает ProcessingInstruction и Comment узлы.
Element† и CDATA узлы разрешены только в EntityReference узлах, если EntityReference узел не является дочерним элементом Attribute узла.
• Атрибуты не являются дочерними элементами Element узла. Атрибуты содержатся в коллекции атрибутов, принадлежащую Element узлу.
Этот метод представляет собой расширение Microsoft объектной модели документа (DOM).
Применяется к
CreateNode(XmlNodeType, String, String)
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
XmlNode Создает объект с указанным XmlNodeType, Nameи NamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::Xml::XmlNodeType type, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode(System.Xml.XmlNodeType type, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode(System.Xml.XmlNodeType type, string name, string? namespaceURI);
abstract member CreateNode : System.Xml.XmlNodeType * string * string -> System.Xml.XmlNode
override this.CreateNode : System.Xml.XmlNodeType * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (type As XmlNodeType, name As String, namespaceURI As String) As XmlNode
Параметры
- type
- XmlNodeType
Новый XmlNodeType узел.
- name
- String
Полное имя нового узла. Если имя содержит двоеточие, он анализируется и PrefixLocalName выполняется синтаксический анализ.
- namespaceURI
- String
URI пространства имен нового узла.
Возвращаемое значение
Новый XmlNode.
Исключения
Имя не указано и XmlNodeType требуется имя.
Примеры
В следующем примере создается новый элемент и он вставляется в XML-документ.
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
//Create the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" +
"<title>Pride And Prejudice</title>" +
"</book>");
//Create a new node and add it to the document.
XmlNode elem = doc.CreateNode(XmlNodeType.Element, "price", null);
elem.InnerText = "19.95";
doc.DocumentElement.AppendChild(elem);
Console.WriteLine("Display the modified XML...");
doc.Save(Console.Out);
}
}
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
'Create the XmlDocument.
Dim doc As New XmlDocument()
doc.LoadXml("<book genre='novel' ISBN='1-861001-57-5'>" & _
"<title>Pride And Prejudice</title>" & _
"</book>")
'Create a new node and add it to the document.
Dim elem As XmlNode = doc.CreateNode(XmlNodeType.Element, "price", Nothing)
elem.InnerText = "19.95"
doc.DocumentElement.AppendChild(elem)
Console.WriteLine("Display the modified XML...")
doc.Save(Console.Out)
End Sub
End Class
Комментарии
Хотя этот метод создает новый объект в контексте документа, он не автоматически добавляет новый объект в дерево документов. Чтобы добавить новый объект, необходимо явно вызвать один из методов вставки узла.
В следующей таблице показано, что NodeType[row] разрешено в другом узле NodeType[column] в соответствии с рекомендацией W3C Extensible Markup Language (XML) 1.0.
| Тип узла | Документ | Тип документа | Объявление XML | Элемент | Атрибут | Text | CDATA | Разметка | EntityReference |
|---|---|---|---|---|---|---|---|---|---|
Document |
Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
DocumentType |
да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
XmlDeclaration |
Да* | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Element |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Attribute |
Нет | Нет | Нет | Да! | Нет | Нет | Нет | Нет | Нет |
Text |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
CDATA |
Нет | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Markup§ |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Нет |
EntityReference |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
* Узел XmlDeclaration должен быть первым дочерним элементом узла Document.
§ Markup включает ProcessingInstruction и Comment узлы.
Element† и CDATA узлы разрешены только в EntityReference узлах, если EntityReference узел не является дочерним элементом Attribute узла.
• Атрибуты не являются дочерними элементами Element узла. Атрибуты содержатся в коллекции атрибутов, принадлежащую Element узлу.
Этот метод представляет собой расширение Microsoft объектной модели документа (DOM).
Применяется к
CreateNode(XmlNodeType, String, String, String)
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
- Исходный код:
- XmlDocument.cs
XmlNode Создает объект с указанным XmlNodeType, Prefixи NameNamespaceURI.
public:
virtual System::Xml::XmlNode ^ CreateNode(System::Xml::XmlNodeType type, System::String ^ prefix, System::String ^ name, System::String ^ namespaceURI);
public virtual System.Xml.XmlNode CreateNode(System.Xml.XmlNodeType type, string prefix, string name, string namespaceURI);
public virtual System.Xml.XmlNode CreateNode(System.Xml.XmlNodeType type, string? prefix, string name, string? namespaceURI);
abstract member CreateNode : System.Xml.XmlNodeType * string * string * string -> System.Xml.XmlNode
override this.CreateNode : System.Xml.XmlNodeType * string * string * string -> System.Xml.XmlNode
Public Overridable Function CreateNode (type As XmlNodeType, prefix As String, name As String, namespaceURI As String) As XmlNode
Параметры
- type
- XmlNodeType
Новый XmlNodeType узел.
- prefix
- String
Префикс нового узла.
- name
- String
Локальное имя нового узла.
- namespaceURI
- String
URI пространства имен нового узла.
Возвращаемое значение
Новый XmlNode.
Исключения
Имя не указано и XmlNodeType требуется имя.
Примеры
В следующем примере в документ добавляется новый элемент.
using System;
using System.Xml;
public class Sample {
public static void Main() {
// Create a new document containing information about a book
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book>" +
" <title>Oberon's Legacy</title>" +
" <price>5.95</price>" +
"</book>");
// Create a new element node for the ISBN of the book
// It is possible to supply a prefix for this node, and specify a qualified namespace.
XmlNode newElem;
newElem = doc.CreateNode(XmlNodeType.Element, "g", "ISBN", "https://global.ISBN/list");
newElem.InnerText = "1-861001-57-5";
// Add the new element to the document
XmlElement root = doc.DocumentElement;
root.AppendChild(newElem);
// Display the modified XML document
Console.WriteLine(doc.OuterXml);
//Output:
// <book><title>Oberon's Legacy</title><price>5.95</price><g:ISBN xmlns:g="https://global.ISBN/list">1-861001-57-5</g:ISBN></book>
}
}
Imports System.Xml
public class Sample
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<book>" & _
" <title>Oberon's Legacy</title>" & _
" <price>5.95</price>" & _
"</book>")
' Create a new element node.
' It is possible to supply a prefix for this node, and specify a qualified namespace
Dim newElem as XmlNode
newElem = doc.CreateNode(XmlNodeType.Element,"g", "ISBN","https://global.ISBN/list")
newElem.InnerText = "1-861001-57-5"
' Add the new element to the document
Dim root as XmlElement = doc.DocumentElement
root.AppendChild(newElem)
' Display the modified XML document
Console.WriteLine(doc.OuterXml)
' Output:
' <book><title>Oberon's Legacy</title><price>5.95</price><g:ISBN xmlns:g="https://global.ISBN/list">1-861001-57-5</g:ISBN></book>
end sub
end class
Комментарии
Хотя этот метод создает новый объект в контексте документа, он не автоматически добавляет новый объект в дерево документов. Чтобы добавить новый объект, необходимо явно вызвать один из методов вставки узла.
В следующей таблице показано, что NodeType[row] разрешено в другом узле NodeType[column] в соответствии с рекомендацией W3C Extensible Markup Language (XML) 1.0.
| Документ | Тип документа | Объявление XML | Элемент | Атрибут | Text | CDATA | Разметка | EntityReference | |
|---|---|---|---|---|---|---|---|---|---|
Document |
Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
DocumentType |
да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
XmlDeclaration |
Да* | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Element |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Attribute |
Нет | Нет | Нет | Да! | Нет | Нет | Нет | Нет | Нет |
Text |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
CDATA |
Нет | Нет | Нет | да | Нет | Нет | Нет | Нет | Да† |
Markup§ |
да | Нет | Нет | да | Нет | Нет | Нет | Нет | Нет |
EntityReference |
Нет | Нет | Нет | да | да | Нет | Нет | Нет | да |
* Узел XmlDeclaration должен быть первым дочерним элементом узла Document.
§ Markup включает ProcessingInstruction и Comment узлы.
Element† и CDATA узлы разрешены только в EntityReference узлах, если EntityReference узел не является дочерним элементом Attribute узла.
• Атрибуты не являются дочерними элементами Element узла. Атрибуты содержатся в коллекции атрибутов, принадлежащую Element узлу.
Этот метод представляет собой расширение Microsoft объектной модели документа (DOM).