반응형
Link-XML 하위 요소와 요소의 차이점
저는 VS IntelliSense에서 이 두 키워드를 모두 발견했습니다.나는 그들 사이의 차이를 구글링하려고 했지만 명확한 답을 얻지 못했습니다.이 중 작은 크기에서 중간 크기의 XML 파일을 사용할 경우 성능이 가장 우수한 것은 무엇입니까?감사해요.
Elements
직접 하위 요소, 즉 직계 하위 요소만 찾습니다.
Descendants
아동, 손주 등 모든 수준의 아동을 발견할 수 있습니다.
다음은 그 차이를 보여주는 예입니다.
<?xml version="1.0" encoding="utf-8" ?>
<foo>
<bar>Test 1</bar>
<baz>
<bar>Test 2</bar>
</baz>
<bar>Test 3</bar>
</foo>
코드:
XDocument doc = XDocument.Load("input.xml");
XElement root = doc.Root;
foreach (XElement e in root.Elements("bar"))
{
Console.WriteLine("Elements : " + e.Value);
}
foreach (XElement e in root.Descendants("bar"))
{
Console.WriteLine("Descendants : " + e.Value);
}
결과:
요소 : 테스트 1요소 : 테스트 3후예 : 테스트 1후예 : 테스트 2후예 : 테스트 3
만약 당신이 원하는 요소들이 바로 아이들이라는 것을 안다면, 당신이 사용한다면 당신은 더 좋은 성능을 얻을 것입니다.Elements
대신에Descendants
.
Descendants
은(는) 현재 요소의 전체 하위 트리에서 지정된 이름을 검색합니다(또는 이름이 제공되지 않는 경우 트리의 평면 버전을 반환합니다). 반면Elements
에서는 현재 요소의 직계 자식만 검색합니다.
언급URL : https://stackoverflow.com/questions/3705020/what-is-the-difference-between-linq-to-xml-descendants-and-elements
반응형
'source' 카테고리의 다른 글
git repo에서 pip을 설치할 때 # egg=foo를 사용하는 이유 (0) | 2023.10.16 |
---|---|
PowerShell 및 StringBuilder (0) | 2023.10.16 |
반응형 이미지 정렬 센터 부트스트랩 3 (0) | 2023.10.11 |
워드프레스:'더 읽기 태그 삽입'은 어떻게 작동합니까? (0) | 2023.10.11 |
CSS를 동적으로 로드하는 중 (0) | 2023.10.11 |