XPath 사용자에 대한 LINQ to XML
이 항목 집합에서는 다양한 XPath 식과 각 XPath 식에 해당하는 동일한 LINQ to XML 항목을 보여 줍니다.
모든 예제에서는 System.Xml.XPath.Extensions의 확장 메서드에 의해 사용할 수 있게 된 LINQ to XML의 XPath 기능을 사용하며XPath 식과 LINQ to XML 식을 모두 실행합니다.그런 다음 두 쿼리의 결과를 비교하여 XPath 식이 LINQ to XML 쿼리와 기능적으로 동일한지 확인합니다.두 형식의 쿼리가 동일한 XML 트리에서 노드를 반환하므로 쿼리 결과 비교는 참조 ID를 사용하여 수행됩니다.
단원 내용
항목 |
설명 |
---|---|
XPath와 LINQ to XML의 유사점과 차이점에 대해 간략히 설명합니다. |
|
XPath 자식 요소 축과 LINQ to XMLElement 메서드를 비교합니다. 관련된 XPath 식은 "DeliveryNotes"입니다. |
|
XPath 자식 요소 축과 LINQ to XMLElements 축을 비교합니다. 관련된 XPath 식은 "./*"입니다. |
|
XPath와 LINQ to XML을 사용하여 루트 요소를 가져오는 방법을 비교합니다. 관련된 XPath 식은 "/PurchaseOrders"입니다. |
|
XPath와 LINQ to XML을 사용하여 특정 이름을 가진 하위 요소를 가져오는 방법을 비교합니다. 관련된 XPath 식은 "//Name"입니다. |
|
XPath와 LINQ to XML을 사용하여 지정된 이름을 가진 하위 요소와 지정된 값을 가진 특성이 포함된 하위 요소를 가져오는 방법을 비교합니다. 관련된 XPath 식은 ".//Address[@Type='Shipping']"입니다. |
|
XPath와 LINQ to XML을 사용하여 다른 요소의 값에 의해 참조되는 특성을 기준으로 선택하여 요소를 가져오는 방법을 비교합니다. 관련된 XPath 식은 ".//Customer[@CustomerID=/Root/Orders/Order[12]/CustomerID]"입니다. |
|
XML 네임스페이스로 작업하기 위해 XPath XmlNamespaceManager 클래스를 사용하는 경우와 XName 클래스의 LINQ to XMLNamespace 속성을 사용하는 경우를 비교합니다. 관련된 XPath 식은 "./aw:*"입니다. |
|
XPath preceding-sibling 축과 LINQ to XML 자식 XNode.ElementsBeforeSelf 축을 비교합니다. 관련된 XPath 식은 "preceding-sibling::*"입니다. |
|
XPath와 LINQ to XML을 사용하여 특정 이름을 가진 자식 요소의 하위 요소를 가져오는 방법을 비교합니다. 관련된 XPath 식은 "./Paragraph//Text/text()"입니다. |
|
XPath에서 통합 연산자 |를 사용하는 경우와 LINQ to XML에서 Concat<TSource> 표준 쿼리 연산자를 사용하는 경우를 비교합니다. 관련된 XPath 식은 "//Category|//Price"입니다. |
|
XPath와 LINQ to XML을 사용하여 특정 이름을 가진 노드의 형제를 모두 찾는 방법을 비교합니다. 관련된 XPath 식은 "../Book"입니다. |
|
XPath와 LINQ to XML을 사용하여 부모 요소를 탐색하고 연결된 특성을 찾는 방법을 비교합니다. 관련된 XPath 식은 "../@id"입니다. |
|
XPath와 LINQ to XML을 사용하여 컨텍스트 노드에 대한 형제의 특정 특성을 찾는 방법을 비교합니다. 관련된 XPath 식은 "../Book/@id"입니다. |
|
XPath와 LINQ to XML을 사용하여 특정 특성이 포함된 요소를 모두 찾는 방법을 비교합니다. 관련된 XPath 식은 "./*[@Select]"입니다. |
|
XPath와 LINQ to XML을 사용하여 상대 위치를 기준으로 요소를 찾는 방법을 비교합니다. 관련된 XPath 식은 "Test[position() >= 2 and position() <= 4]"입니다. |
|
XPath와 LINQ to XML을 사용하여 노드의 바로 이전 형제를 찾는 방법을 비교합니다. 관련된 XPath 식은 "preceding-sibling::*[1]"입니다. |