2011-10-06 1 views
0

지금 당장이 코드를 (실제로는 한 단계 더 깊게) 작성했습니다. 회사 이름이 회사 노드와 같으면 노드 목록을 만듭니다 (모든 세부 사항을 드롭 다운 상자에 입력해야 함) ---이 프로젝트에 3.5를 사용하지 않음 :(XMLDocument deep goes

정말 깨끗한 방법이 있는지 궁금, 모든 foreach 문을 좋아하지 않습니다. 여기하는 것은 쿼리 언어를 제공,

<companies> 
    <company id="company1"> 
     <code>12</code> 
     <detail>detail of 12 code</detail> 
    </company> 
    <company id="company2"> 
     <code>15</code> 
     <detail>detail of 15 code</detail> 
    </company> 
</companies> 
+0

.NET 3.5를 사용할 수 있습니까? LINQ to XML은이 모든 것을 상당히 단순하게 만듭니다 ... –

+0

죄송합니다. 사용하지 마십시오 3.5 나는 생각합니다. –

답변

2

XPath에서 모양과 XPathNavigator 클래스를 가지고있는 것처럼 내 XML의 모습입니다 XML 용

또는 원하는 경우 Linq to XML을 사용할 수 있지만 사용중인 .net 프레임 워크에 따라 다릅니다.

0

어때요?

[XmlRoot("companies")] 
public class Root 
{ 
    [XmlElement("company")]  
    public company[] companies; 
} 

public class company 
{ 
    [XmlAttribute("id")] 
    public string id; 
    public string code; 
    public string detail; 
} 


XmlSerializer xml = new XmlSerializer(typeof(Root)); 
Root r = (Root)xml.Deserialize(new StringReader(xmlstr));