2013-04-17 30 views
9

Tôi có một lớp học trong đó có bất động sản whiches loại là char như sauSerialize kiểu char dữ liệu với XmlSerializer

[XmlRoot("Root")] 
    public class TestClass 
    { 
     [XmlElement("Test", typeof(char))] 
     public char TestProperty { get; set; } 
    } 

Khi giá trị của TestProperty là 'N' và nếu tôi serialize TestClass nó sẽ tạo ra kết quả sau:

<Root> 
     <Test>78</Test> 
    </Root> 

Nhưng những gì tôi muốn là phải có sau

<Root> 
     <Test>N</Test> 
    </Root> 

có thể wit thay đổi loại TestProperty thành chuỗi?

Trả lời

7

Không AFAIK. Tuy nhiên, bạn có thể ăn gian:

[XmlIgnore] 
public char TestProperty { get; set; } 

[XmlElement("Test"), Browsable(false)] 
public string TestPropertyString { 
    get { return TestProperty.ToString(); } 
    set { TestProperty = value.Single(); } 
} 
+0

Cảm ơn bạn. Nó là tốt mà bây giờ tôi sẽ không cố gắng để đạt được điều đó). Sau đó, tốt hơn là nên thay đổi kiểu TestProperty thành chuỗi mà tôi nghĩ. –

Các vấn đề liên quan