XNode.ReplaceWith Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Заменяет данный узел на указанное содержимое.
Перегрузки
ReplaceWith(Object) |
Заменяет данный узел на указанное содержимое. |
ReplaceWith(Object[]) |
Заменяет данный узел на указанное содержимое. |
Примеры
В следующем примере этот метод используется для замены содержимого узла другим содержимым.
XElement xmlTree = new XElement("Root",
new XElement("Child1", "child1 content"),
new XElement("Child2", "child2 content"),
new XElement("Child3", "child3 content"),
new XElement("Child4", "child4 content"),
new XElement("Child5", "child5 content")
);
XElement child3 = xmlTree.Element("Child3");
child3.ReplaceWith(
new XElement("NewChild", "new content")
);
Console.WriteLine(xmlTree);
Dim xmlTree As XElement = _
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<Child3>child3 content</Child3>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Dim child3 As XElement = xmlTree.<Child3>(0)
child3.ReplaceWith(<NewChild>new content</NewChild>)
Console.WriteLine(xmlTree)
В этом примере выводятся следующие данные:
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<NewChild>new content</NewChild>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Комментарии
Сведения о допустимом содержимом, которое может быть передано этому методу, см. в разделе Допустимое содержимое объектов XElement и XDocument.
Этот метод вызывает Changed события и Changing .
Хранит XContainer свои дочерние узлы в виде единого списка XNode объектов. Это означает, что ReplaceWith метод должен просматривать список прямых дочерних узлов в родительском контейнере. Поэтому использование этого метода может повлиять на производительность.
ReplaceWith(Object)
- Исходный код:
- XNode.cs
- Исходный код:
- XNode.cs
- Исходный код:
- XNode.cs
Заменяет данный узел на указанное содержимое.
public:
void ReplaceWith(System::Object ^ content);
public void ReplaceWith (object content);
public void ReplaceWith (object? content);
member this.ReplaceWith : obj -> unit
Public Sub ReplaceWith (content As Object)
Параметры
- content
- Object
Содержимое для замены в узле.
Примеры
В следующем примере этот метод используется для замены содержимого узла другим содержимым.
XElement xmlTree = new XElement("Root",
new XElement("Child1", "child1 content"),
new XElement("Child2", "child2 content"),
new XElement("Child3", "child3 content"),
new XElement("Child4", "child4 content"),
new XElement("Child5", "child5 content")
);
XElement child3 = xmlTree.Element("Child3");
child3.ReplaceWith(
new XElement("NewChild", "new content")
);
Console.WriteLine(xmlTree);
Dim xmlTree As XElement = _
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<Child3>child3 content</Child3>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Dim child3 As XElement = xmlTree.<Child3>(0)
child3.ReplaceWith(<NewChild>new content</NewChild>)
Console.WriteLine(xmlTree)
В этом примере выводятся следующие данные:
<Root>
<Child1>child1 content</Child1>
<Child2>child2 content</Child2>
<NewChild>new content</NewChild>
<Child4>child4 content</Child4>
<Child5>child5 content</Child5>
</Root>
Комментарии
Этот метод сначала удаляет этот узел из родительского узла, а затем добавляет указанное содержимое в родительский узел вместо этого узла.
Хранит XContainer свои дочерние узлы в виде единого списка XNode объектов. Это означает, что ReplaceWith метод должен просматривать список прямых дочерних узлов в родительском контейнере. Поэтому использование этого метода может повлиять на производительность.
Сведения о допустимом содержимом, которое может быть передано этому методу, см. в разделе Допустимое содержимое объектов XElement и XDocument.
Этот метод вызывает Changed события и Changing .
См. также раздел
Применяется к
ReplaceWith(Object[])
- Исходный код:
- XNode.cs
- Исходный код:
- XNode.cs
- Исходный код:
- XNode.cs
Заменяет данный узел на указанное содержимое.
public:
void ReplaceWith(... cli::array <System::Object ^> ^ content);
public void ReplaceWith (params object[] content);
public void ReplaceWith (params object?[] content);
member this.ReplaceWith : obj[] -> unit
Public Sub ReplaceWith (ParamArray content As Object())
Параметры
- content
- Object[]
Список параметров нового содержимого.
Примеры
В следующем примере показано использование результатов запроса LINQ to XML в качестве входных данных для этого метода.
XElement srcTree = new XElement("Root",
new XElement("Element1", 1),
new XElement("Element2", 2),
new XElement("Element3", 3),
new XElement("Element4", 4),
new XElement("Element5", 5)
);
XElement xmlTree = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5)
);
XElement child3 = xmlTree.Element("Child3");
child3.ReplaceWith(
from el in srcTree.Elements()
where (int)el > 3
select el
);
Console.WriteLine(xmlTree);
Dim srcTree As XElement = _
<Root>
<Element1>1</Element1>
<Element2>2</Element2>
<Element3>3</Element3>
<Element4>4</Element4>
<Element5>5</Element5>
</Root>
Dim xmlTree As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Dim child3 As XElement = xmlTree.<Child3>(0)
child3.ReplaceWith( _
From el In srcTree.Elements() _
Where (CInt(el) > 3) _
Select el)
Console.WriteLine(xmlTree)
В этом примере выводятся следующие данные:
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Element4>4</Element4>
<Element5>5</Element5>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Комментарии
Этот метод сначала удаляет этот узел из родительского узла, а затем добавляет указанное содержимое в родительский узел вместо этого узла.
Хранит XContainer свои дочерние узлы в виде единого списка XNode объектов. Это означает, что ReplaceWith метод должен просматривать список прямых дочерних узлов в родительском контейнере. Поэтому использование этого метода может повлиять на производительность.
Сведения о допустимом содержимом, которое может быть передано этому методу, см. в разделе Допустимое содержимое объектов XElement и XDocument.
Этот метод вызывает Changed события и Changing .