1
xml 문서를로드하는 중 요소에 foreach 루프가 있는데이 요소에 tag
이라는 자식 요소를 선택하려고합니다. xml 요소의 특정 하위 항목을 가져 오는 방법은 무엇입니까?
이
는 XML 파일입니다<?xml version="1.0" encoding="utf-8"?>
<view>
<tag>
<name>content</name>
<tag>
<name>div</name>
</tag>
</tag>
</view>
그리고 이것은 코드입니다 :
이string xmlString = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath("~/xml/xml.xml"));
XDocument doc = XDocument.Parse(xmlString);
XElement xmlElement = doc.Element("view");
foreach (var tagItem in xmlElement.Descendants("tag"))
{
//do something
}
foreach 루프에서 작성된 코드는 어떤 깊이 태그의 모든 요소를 포함하는 것입니다,하지만 난 원하는 첫 번째 깊이있는 것들을 얻으십시오 (아이들).
linq를 사용하여이 작업을 수행하는 방법은 무엇입니까? 원하는 요소를 가정
는
당신이 (또한 xsd.exe와) 클래스를 생성하는 XML 그냥 다음 xsd.exe과 XSD를 생성하고있는 경우. 그런 다음 xmlserializer를 사용하여 xml을 생성 된 클래스 구조로 직렬화 할 수 있습니다. –
첫 번째 심도'tag' 요소는 항상'view' 요소의 하위 요소입니까? 그럼 Ben이 말한대로해라. – helb
''의 직접적인 자식을 원하면'Descendants()'대신'xmlElement.Elements ("tag")'를 사용한다. –