XDocument Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса XDocument.
Перегрузки
XDocument() |
Инициализирует новый экземпляр класса XDocument. |
XDocument(Object[]) |
Инициализирует новый экземпляр класса XDocument с указанным содержимым. |
XDocument(XDocument) |
Инициализирует новый экземпляр класса XDocument из существующего объекта XDocument. |
XDocument(XDeclaration, Object[]) |
Инициализация нового экземпляра класса XDocument с указанным XDeclaration и содержимым. |
Примеры
В следующем примере создается документ, а затем добавляется комментарий и элемент в него. Затем он создает другой документ с помощью результатов запроса.
XDocument srcTree = new XDocument(
new XComment("This is a comment"),
new XElement("Root",
new XElement("Child1", "data1"),
new XElement("Child2", "data2"),
new XElement("Child3", "data3"),
new XElement("Child2", "data4"),
new XElement("Info5", "info5"),
new XElement("Info6", "info6"),
new XElement("Info7", "info7"),
new XElement("Info8", "info8")
)
);
XDocument doc = new XDocument(
new XComment("This is a comment"),
new XElement("Root",
from el in srcTree.Element("Root").Elements()
where ((string)el).StartsWith("data")
select el
)
);
Console.WriteLine(doc);
Dim srcTree As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
<Info5>info5</Info5>
<Info6>info6</Info6>
<Info7>info7</Info7>
<Info8>info8</Info8>
</Root>
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a comment-->
<Root>
<%= From el In srcTree.<Root>.Elements _
Where CStr(el).StartsWith("data") _
Select el %>
</Root>
Console.WriteLine(doc)
В этом примере выводятся следующие данные:
<!--This is a comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
</Root>
Комментарии
Перегруженные конструкторы позволяют создать пустой объект XDocument; создать с XDocument определенным исходным содержимым и создать XDocument копию другого XDocument объекта.
Ситуации, когда необходимо создавать документ XDocument, встречаются нечасто. Вместо этого обычно имеется возможность создавать XML-деревья с корневым узлом XElement. Если отсутствуют конкретные требования по созданию документа (вызванные, например, необходимостью создания инструкций по обработке и комментариев на верхнем уровне или необходимостью поддержки типов документов), часто бывает удобнее всего в качестве корневого узла использовать XElement.
Дополнительные сведения о допустимом содержимом XDocumentобъекта см. в разделе "Допустимое содержимое объектов XElement и XDocument".
XDocument()
Инициализирует новый экземпляр класса XDocument.
public:
XDocument();
public XDocument ();
Public Sub New ()
Примеры
В следующем примере создается новый документ, а затем добавляется комментарий и элемент в него.
XDocument doc = new XDocument();
doc.Add(new XComment("This is a comment"));
doc.Add(new XElement("Root", "content"));
Console.WriteLine(doc);
Dim doc As XDocument = New XDocument()
doc.Add(<!--This is a comment-->)
doc.Add(<Root>content</Root>)
Console.WriteLine(doc)
В этом примере выводятся следующие данные:
<!--This is a comment-->
<Root>content</Root>
Комментарии
Ситуации, когда необходимо создавать документ XDocument, встречаются нечасто. Вместо этого обычно имеется возможность создавать XML-деревья с корневым узлом XElement. Если отсутствуют конкретные требования по созданию документа (вызванные, например, необходимостью создания инструкций по обработке и комментариев на верхнем уровне или необходимостью поддержки типов документов), часто бывает удобнее всего в качестве корневого узла использовать XElement.
Дополнительные сведения о допустимом содержимом XDocumentобъекта см. в разделе "Допустимое содержимое объектов XElement и XDocument".
См. также раздел
Применяется к
XDocument(Object[])
Инициализирует новый экземпляр класса XDocument с указанным содержимым.
public:
XDocument(... cli::array <System::Object ^> ^ content);
public XDocument (params object[] content);
public XDocument (params object?[] content);
new System.Xml.Linq.XDocument : obj[] -> System.Xml.Linq.XDocument
Public Sub New (ParamArray content As Object())
Параметры
- content
- Object[]
Список параметров объектов содержимого для добавления в этот документ.
Примеры
В следующем примере создается документ, а затем добавляется комментарий и элемент в него. Затем он создает другой документ с помощью результатов запроса.
XDocument srcTree = new XDocument(
new XComment("This is a comment"),
new XElement("Root",
new XElement("Child1", "data1"),
new XElement("Child2", "data2"),
new XElement("Child3", "data3"),
new XElement("Child2", "data4"),
new XElement("Info5", "info5"),
new XElement("Info6", "info6"),
new XElement("Info7", "info7"),
new XElement("Info8", "info8")
)
);
XDocument doc = new XDocument(
new XComment("This is a comment"),
new XElement("Root",
from el in srcTree.Element("Root").Elements()
where ((string)el).StartsWith("data")
select el
)
);
Console.WriteLine(doc);
Dim srcTree As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
<Info5>info5</Info5>
<Info6>info6</Info6>
<Info7>info7</Info7>
<Info8>info8</Info8>
</Root>
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a comment-->
<Root>
<%= From el In srcTree.<Root>.Elements _
Where CStr(el).StartsWith("data") _
Select el %>
</Root>
Console.WriteLine(doc)
В этом примере выводятся следующие данные:
<!--This is a comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
</Root>
Комментарии
Ситуации, когда необходимо создавать документ XDocument, встречаются нечасто. Вместо этого обычно имеется возможность создавать XML-деревья с корневым узлом XElement. Если отсутствуют конкретные требования по созданию документа (вызванные, например, необходимостью создания инструкций по обработке и комментариев на верхнем уровне или необходимостью поддержки типов документов), часто бывает удобнее всего в качестве корневого узла использовать XElement.
Дополнительные сведения о допустимом содержимом XDocumentобъекта см. в разделе "Допустимое содержимое объектов XElement и XDocument".
См. также раздел
Применяется к
XDocument(XDocument)
public:
XDocument(System::Xml::Linq::XDocument ^ other);
public XDocument (System.Xml.Linq.XDocument other);
new System.Xml.Linq.XDocument : System.Xml.Linq.XDocument -> System.Xml.Linq.XDocument
Public Sub New (other As XDocument)
Параметры
Комментарии
Этот конструктор используется для создания глубокой XDocumentкопии .
Этот конструктор проходит по всем узлам и атрибутам в документе, указанном в параметре other
, и создает копии всех узлов по мере сборки только что инициализированного XDocument.
См. также раздел
Применяется к
XDocument(XDeclaration, Object[])
Инициализация нового экземпляра класса XDocument с указанным XDeclaration и содержимым.
public:
XDocument(System::Xml::Linq::XDeclaration ^ declaration, ... cli::array <System::Object ^> ^ content);
public XDocument (System.Xml.Linq.XDeclaration declaration, params object[] content);
public XDocument (System.Xml.Linq.XDeclaration? declaration, params object[] content);
public XDocument (System.Xml.Linq.XDeclaration? declaration, params object?[] content);
new System.Xml.Linq.XDocument : System.Xml.Linq.XDeclaration * obj[] -> System.Xml.Linq.XDocument
Public Sub New (declaration As XDeclaration, ParamArray content As Object())
Параметры
- declaration
- XDeclaration
XDeclaration для документа.
- content
- Object[]
Содержимое документа.
Примеры
В следующем примере этот конструктор используется для создания документа.
XDocument srcTree = new XDocument(
new XComment("This is a comment"),
new XElement("Root",
new XElement("Child1", "data1"),
new XElement("Child2", "data2"),
new XElement("Child3", "data3"),
new XElement("Child2", "data4"),
new XElement("Info5", "info5"),
new XElement("Info6", "info6"),
new XElement("Info7", "info7"),
new XElement("Info8", "info8")
)
);
XDocument doc = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XComment("This is a new comment"),
new XElement("Root",
from el in srcTree.Element("Root").Elements()
where ((string)el).StartsWith("data")
select el
)
);
doc.Save("Test.xml");
Console.WriteLine(File.ReadAllText("Test.xml"));
Dim srcTree As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
<Info5>info5</Info5>
<Info6>info6</Info6>
<Info7>info7</Info7>
<Info8>info8</Info8>
</Root>
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a new comment-->
<Root>
<%= From el In srcTree.<Root>.Elements _
Where CStr(el).StartsWith("data") _
Select el %>
</Root>
doc.Save("Test.xml")
Console.WriteLine(File.ReadAllText("Test.xml"))
В этом примере выводятся следующие данные:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--This is a new comment-->
<Root>
<Child1>data1</Child1>
<Child2>data2</Child2>
<Child3>data3</Child3>
<Child2>data4</Child2>
</Root>
Комментарии
Ситуации, когда необходимо создавать документ XDocument, встречаются нечасто. Вместо этого обычно имеется возможность создавать XML-деревья с корневым узлом XElement. Если отсутствуют конкретные требования по созданию документа (вызванные, например, необходимостью создания инструкций по обработке и комментариев на верхнем уровне или необходимостью поддержки типов документов), часто бывает удобнее всего в качестве корневого узла использовать XElement.
Дополнительные сведения о допустимом содержимом XDocumentобъекта см. в разделе "Допустимое содержимое объектов XElement и XDocument".