XElement.ReplaceAll 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이 요소의 자식 노드 및 특성을 지정된 콘텐츠로 바꿉니다.
오버로드
ReplaceAll(Object) |
이 요소의 자식 노드 및 특성을 지정된 콘텐츠로 바꿉니다. |
ReplaceAll(Object[]) |
이 요소의 자식 노드 및 특성을 지정된 콘텐츠로 바꿉니다. |
예제
다음 예제에서는 LINQ 쿼리의 결과를 이 메서드에 전달하여 요소의 내용을 쿼리 결과로 바꿉니다. 콘텐츠를 대체한 요소를 쿼리합니다.
XElement xmlTree = new XElement("Root",
new XElement("Data", 1),
new XElement("Data", 2),
new XElement("Data", 3),
new XElement("Data", 4),
new XElement("Data", 5)
);
Console.WriteLine(xmlTree);
Console.WriteLine("-----");
xmlTree.ReplaceAll(
from el in xmlTree.Elements()
where (int)el >= 3
select new XElement("NewData", (int)el)
);
Console.WriteLine(xmlTree);
Dim xmlTree As XElement = _
<Root>
<Data>1</Data>
<Data>2</Data>
<Data>3</Data>
<Data>4</Data>
<Data>5</Data>
</Root>
Console.WriteLine(xmlTree)
Console.WriteLine("-----")
xmlTree.ReplaceAll( _
From el In xmlTree.Elements _
Where el.Value >= 3 _
Select <NewData><%= el.Value %></NewData> _
)
Console.WriteLine(xmlTree)
이 예제는 다음과 같은 출력을 생성합니다.
<Root>
<Data>1</Data>
<Data>2</Data>
<Data>3</Data>
<Data>4</Data>
<Data>5</Data>
</Root>
-----
<Root>
<NewData>3</NewData>
<NewData>4</NewData>
<NewData>5</NewData>
</Root>
설명
이 메서드는 스냅샷 의미 체계를 사용합니다. 즉, 현재 요소의 내용을 새 콘텐츠로 바꾸기 전에 새 콘텐츠의 별도 복사본을 만듭니다. 즉, 현재 요소의 내용을 쿼리하고 쿼리 결과를 지정된 새 콘텐츠로 사용할 수 있습니다.
이 함수에 전달할 수 있는 유효한 콘텐츠에 대한 자세한 내용은 XElement 및 XDocument 개체의 유효한 콘텐츠를 참조하세요.
이 메서드는 및 이벤트를 발생 Changed 시킬 Changing 것입니다.
ReplaceAll(Object)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
이 요소의 자식 노드 및 특성을 지정된 콘텐츠로 바꿉니다.
public:
void ReplaceAll(System::Object ^ content);
public void ReplaceAll (object content);
public void ReplaceAll (object? content);
member this.ReplaceAll : obj -> unit
Public Sub ReplaceAll (content As Object)
매개 변수
- content
- Object
이 요소의 자식 노드 및 특성을 대체할 콘텐츠입니다.
예제
다음 예제에서는 이 메서드를 사용합니다.
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
// ReplaceAll with an XElement object.
root.ReplaceAll(new XElement("NewChild", "n"));
Console.WriteLine(root);
// ReplaceAll with an XAttribute object.
root.ReplaceAll(new XAttribute("NewAttribute", "n"));
Console.WriteLine(root);
// ReplaceAll with a string.
root.ReplaceAll("Some text");
Console.WriteLine(root);
// ReplaceAll with a double.
double dbl = 12.345;
root.ReplaceAll(dbl);
Console.WriteLine(root);
// ReplaceAll with a DateTime object.
DateTime dt = new DateTime(2006, 10, 6, 12, 30, 00);
root.ReplaceAll(dt);
Console.WriteLine(root);
// ReplaceAll with a string array.
// Any collection other than a collection of XElement or XAttribute objects
// are converted to strings. The strings are concatenated and added.
string[] stringArray = {
"abc",
"def",
"ghi"
};
root.ReplaceAll(stringArray);
Console.WriteLine(root);
// ReplaceAll with an array of XElement objects.
XElement[] ellArray = {
new XElement("NewChild1", 1),
new XElement("NewChild2", 2),
new XElement("NewChild3", 3)
};
root.ReplaceAll(ellArray);
Console.WriteLine(root);
// ReplaceAll with an array of XAttribute objects.
XAttribute[] attArray = {
new XAttribute("NewAtt1", 1),
new XAttribute("NewAtt2", 2),
new XAttribute("NewAtt3", 3)
};
root.ReplaceAll(attArray);
Console.WriteLine(root);
Dim root As XElement = _
<Root>
<Child>child content</Child>
</Root>
' ReplaceAll with an XElement object.
root.ReplaceAll(<NewChild>n</NewChild>)
Console.WriteLine(root)
' ReplaceAll with an XAttribute object.
root.ReplaceAll(New XAttribute("NewAttribute", "n"))
Console.WriteLine(root)
' ReplaceAll with a string.
root.ReplaceAll("Some text")
Console.WriteLine(root)
' ReplaceAll with a double.
Dim dbl As Double = 12.345
root.ReplaceAll(dbl)
Console.WriteLine(root)
' ReplaceAll with a DateTime object.
Dim dt As DateTime = New DateTime(2006, 10, 6, 12, 30, 0)
root.ReplaceAll(dt)
Console.WriteLine(root)
' ReplaceAll with a string array.
' Any collection other than a collection of XElement or XAttribute objects
' are converted to strings. The strings are concatenated and added.
Dim stringArray As String() = { _
"abc", _
"def", _
"ghi" _
}
root.ReplaceAll(stringArray)
Console.WriteLine(root)
' ReplaceAll with an array of XElement objects.
Dim ellArray As XElement() = { _
New XElement("NewChild1", 1), _
New XElement("NewChild2", 2), _
New XElement("NewChild3", 3) _
}
root.ReplaceAll(ellArray)
Console.WriteLine(root)
' ReplaceAll with an array of XAttribute objects.
Dim attArray As XAttribute() = { _
New XAttribute("NewAtt1", 1), _
New XAttribute("NewAtt2", 2), _
New XAttribute("NewAtt3", 3) _
}
root.ReplaceAll(attArray)
Console.WriteLine(root)
이 예제는 다음과 같은 출력을 생성합니다.
<Root>
<NewChild>n</NewChild>
</Root>
<Root NewAttribute="n" />
<Root>Some text</Root>
<Root>12.345</Root>
<Root>2006-10-06T12:30:00</Root>
<Root>abcdefghi</Root>
<Root>
<NewChild1>1</NewChild1>
<NewChild2>2</NewChild2>
<NewChild3>3</NewChild3>
</Root>
<Root NewAtt1="1" NewAtt2="2" NewAtt3="3" />
설명
이 메서드는 먼저 기존 콘텐츠 및 특성을 제거합니다. 그런 다음 지정된 content
를 추가합니다.
이 메서드는 스냅샷 의미 체계를 사용합니다. 즉, 현재 요소의 내용을 새 콘텐츠로 바꾸기 전에 새 콘텐츠의 별도 복사본을 만듭니다. 즉, 현재 요소의 내용을 쿼리하고 쿼리 결과를 지정된 새 콘텐츠로 사용할 수 있습니다.
이 함수에 전달할 수 있는 유효한 콘텐츠에 대한 자세한 내용은 XElement 및 XDocument 개체의 유효한 콘텐츠를 참조하세요.
이 메서드는 및 이벤트를 발생 Changed 시킬 Changing 것입니다.
추가 정보
적용 대상
ReplaceAll(Object[])
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
이 요소의 자식 노드 및 특성을 지정된 콘텐츠로 바꿉니다.
public:
void ReplaceAll(... cli::array <System::Object ^> ^ content);
public void ReplaceAll (params object[] content);
public void ReplaceAll (params object?[] content);
member this.ReplaceAll : obj[] -> unit
Public Sub ReplaceAll (ParamArray content As Object())
매개 변수
- content
- Object[]
콘텐츠 개체의 매개 변수 목록입니다.
예제
다음 예제에서는 LINQ 쿼리의 결과를 이 메서드에 전달하여 요소의 내용을 쿼리 결과로 바꿉니다.
XElement xmlTree1 = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5),
new XElement("Child6", 6)
);
XElement root = new XElement("Root",
new XElement("Child", "child content")
);
root.ReplaceAll(
from el in xmlTree1.Elements()
where((int)el >= 3 && (int)el <= 5)
select el
);
Console.WriteLine(root);
Dim xmlTree1 As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
<Child6>6</Child6>
</Root>
Dim root As XElement = <Root>
<Child>child content</Child>
</Root>
root.ReplaceAll( _
From el In xmlTree1.Elements() _
Where el.Value >= 3 And el.Value <= 5 _
Select el _
)
Console.WriteLine(root)
이 예제는 다음과 같은 출력을 생성합니다.
<Root>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
설명
이 메서드는 먼저 기존 콘텐츠 및 특성을 제거합니다. 그런 다음 지정된 content
를 추가합니다.
이 메서드는 스냅샷 의미 체계를 사용합니다. 즉, 현재 요소의 내용을 새 콘텐츠로 바꾸기 전에 새 콘텐츠의 별도 복사본을 만듭니다. 즉, 현재 요소의 내용을 쿼리하고 쿼리 결과를 지정된 새 콘텐츠로 사용할 수 있습니다.
이 함수에 전달할 수 있는 유효한 콘텐츠에 대한 자세한 내용은 XElement 및 XDocument 개체의 유효한 콘텐츠를 참조하세요.
이 메서드는 및 이벤트를 발생 Changed 시킬 Changing 것입니다.
추가 정보
적용 대상
.NET