이 XElement 클래스는 LINQ to XML의 기본 클래스 중 하나입니다. XML 요소를 나타냅니다. 다음 목록에는 이 클래스를 사용할 수 있는 항목이 나와 있습니다.
- 요소를 만듭니다.
- 요소의 내용을 변경합니다.
- 자식 요소를 추가, 변경 또는 삭제합니다.
- 요소에 특성을 추가합니다.
- 텍스트 형식으로 요소의 내용을 직렬화합니다.
System.Xml의 다른 클래스인 XmlReader, XmlWriter, 그리고 XslCompiledTransform와도 상호 운용할 수 있습니다.
이 문서에서는 클래스에서 제공하는 XElement 기능을 설명합니다.
XML 트리 생성
다음을 포함하여 다양한 방법으로 XML 트리를 생성할 수 있습니다.
- 코드에서 XML 트리를 생성할 수 있습니다. 자세한 내용은 XML 트리를 참조하세요.
- 다양한 원본, 예를 들면 TextReader, 텍스트 파일 또는 웹 주소(URL)에서 XML을 구문 분석할 수 있습니다. 자세한 내용은 XML 구문 분석을 참조하세요.
- 트리를 채우기 위해 XmlReader을(를) 사용할 수 있습니다. 자세한 내용은 ReadFrom를 참조하세요.
- 콘텐츠를 작성할 XmlWriter수 있는 모듈이 있는 경우 이 메서드를 사용하여 CreateWriter 작성기를 만들고, 작성기를 모듈에 전달한 다음, 작성된 XmlWriter 콘텐츠를 사용하여 XML 트리를 채울 수 있습니다.
다음 예제에서는 트리를 만듭니다. C# 버전은 중첩된 요소 만들기를 사용합니다. Visual Basic에서 동일한 기술을 사용할 수 있지만 이 예제에서는 XML 리터럴을 사용합니다.
XElement contacts =
new XElement("Contacts",
new XElement("Contact",
new XElement("Name", "Patrick Hines"),
new XElement("Phone", "206-555-0144"),
new XElement("Address",
new XElement("Street1", "123 Main St"),
new XElement("City", "Mercer Island"),
new XElement("State", "WA"),
new XElement("Postal", "68042")
)
)
);
Dim contacts As XElement = _
<Contacts>
<Contact>
<Name>Patrick Hines</Name>
<Phone>206-555-0144</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
</Contact>
</Contacts>
다음 예제와 같이 LINQ to XML 쿼리를 사용하여 XML 트리를 채울 수도 있습니다.
XElement srcTree = new XElement("Root",
new XElement("Element", 1),
new XElement("Element", 2),
new XElement("Element", 3),
new XElement("Element", 4),
new XElement("Element", 5)
);
XElement xmlTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
from el in srcTree.Elements()
where (int)el > 2
select el
);
Console.WriteLine(xmlTree);
Dim srcTree As XElement = _
<Root>
<Element>1</Element>
<Element>2</Element>
<Element>3</Element>
<Element>4</Element>
<Element>5</Element>
</Root>
Dim xmlTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<%= From el In srcTree.Elements() _
Where el.Value > 2 _
Select el %>
</Root>
Console.WriteLine(xmlTree)
이 예제는 다음과 같은 출력을 생성합니다.
<Root>
<Child>1</Child>
<Child>2</Child>
<Element>3</Element>
<Element>4</Element>
<Element>5</Element>
</Root>
XML 트리 직렬화
XML 트리를 File로, TextWriter로 또는 XmlWriter로 직렬화할 수 있습니다.
자세한 내용은 XML 트리 직렬화를 참조하세요.
축 메서드를 통해 XML 데이터 검색
축 메서드를 사용하여 특성, 자식 요소, 하위 요소 및 상위 요소를 검색할 수 있습니다. LINQ to XML 쿼리는 축 메서드에서 작동하며 XML 트리를 탐색하고 처리하는 몇 가지 유연하고 강력한 방법을 제공합니다.
자세한 내용은 LINQ to XML 축 개요를 참조하세요.
XML 트리 쿼리
XML 트리에서 데이터를 추출하는 LINQ to XML 쿼리를 작성할 수 있습니다.
자세한 내용은 쿼리 XML 트리 개요를 참조하세요.
XML 트리 수정
콘텐츠 또는 특성을 변경하는 등 다양한 방법으로 요소를 수정할 수 있습니다. 부모 요소로부터 요소를 제거할 수도 있습니다.
자세한 내용은 XML 트리 수정을 참조하세요.
참고하십시오
.NET