2014-11-04 2 views
1

이것이 가능한지 확실하지 않지만 가능한 한 일관되게 내 질문 문구를 사용하려고합니다.XML 속성 "Complex Property"

xml을 작성하는 것에 지쳐서 객체 용 ISerielizable 및 XMLSerializer에 대해 배우고 있습니다. 나는 다음과 같은 XML을 가지고있다.

<Person> 
<FName>John</FName> 
<LName>Smith</LName> 
<Address Type = "Road">1623 Stagecoach</Address> 
</Person> 

나는

어떻게 될 주소 노드의 유형 속성을 serilize 수 인 AddressType = 도로의 속성을 추가하는 대신

string FName 
string LName 
string Address 

의 특성을 가진 사람 개체가 주소 속성의 일부

염두에 두어야 할 것은, Label의 Font 속성 또는 Size 속성입니다.

는 편집 :

내가 이것을 다시 읽기 나처럼, 나는 간단한 대답이 새 주소 클래스를 추가하고 모든 것이 깨끗하게 밖으로 작동 알고 있습니다. 제 질문은, 그 외에 방법이 있을까요?

답변

2

우선 클래스 라이브러리를 변경하고 직렬화를 원할 수도 있습니다. 제작 해보십시오.

[XmlRoot("Person")] 
public class Person() 
{ 
[XmlElement("FName")] 
public string Fname { get; set; } 

[XmlElement("LName")] 
public string LName { get; set; } 

[XmlElement("Address")]  
public Address Address; 
} 

public class Address() 
{ 
[XmlAttribute("Type")] 
public string Type { get; set; } 

[XmlType] 
public string AddrValue { get; set; } 
}