2010-05-28 2 views
5

내가이.NET (배열)에서이 XML

<foo> 
    <bar ... /> 
    <bar ... /> 
</foo> 

과 같은 XML을 필요로 그리고 현재 다음 클래스 구조가 직렬화하는 방법 :

[XmlRoot("foo")] 
public class Foo 
{ 
    [XmlArrayItem("bar")] 
    public List<Bar> myBars; 
} 

를하지만 나에게 어디에 줄 XML을 제공을 항목은 bars 요소 안에 래핑됩니다. 필요한 사용자 정의 XmlAttributes를 어떻게 정의해야합니까?

답변

7

나는 비슷한 어제 뭔가를 해결했다, 이것은 나를위한 솔루션했다 : 사실, 나는 List<T>Foo을 정의

[XmlRoot("foo")] 
public class Foo : List<Bar> 
{ 
} 

[XmlType("bar")] 
public class Bar 
{ 
} 

:

[XmlRoot("foo")] 
public class Foo 
{ 
    [XmlElement("bar")] 
    public List<Bar> myBars; 
} 
3

내가 사용하는 솔루션이있다 따라서 일반 목록으로 작동합니다. 해당 목록의 유형은 XmlType 속성을 정의하기 만하면됩니다.

+0

정답이 하나만있을 수 있습니다. (정답으로 표시하려고합니다.) – Morri

+0

나를 골라 줘 !-) – Steven