2013-01-14 54 views
0

是否有可能反序列化一個具有MyValue的XML文件是0x0001並將其反序列化爲uint屬性?實現這個最好的方法是什麼?將xml字符串反序列化爲uint屬性

public class MyClass 
{ 
    private string myValue; 
    public uint MyValue 
    { 
     //checkValue method checks if myValue is a decimal or hex and number (returns an uint value). 

     get { return checkValue(myValue); } 
     set { myValue = value.ToString(); } 

    } 
} 

回答

0

如何像:

public class MyClass 
{ 
    private uint? _myValue; 
    [XmlIgnore] 
    public uint MyValue 
    { 
     get{ return _myValue ?? checkValue(MyValueString); } 
     set{ _myValue = value; } 
    }  

    [XmlElement("MyValue")] 
    public string MyValueString 
    { 
     //checkValue method checks if myValue is a decimal or hex and number (returns an uint value). 
     get; set; 
    } 
} 
+0

我可以預見避免了額外的屬性,唯一的方法是實施[IXmlSerializable的(http://msdn.microsoft.com/en-us/ library/system.xml.serialization.ixmlserializable.aspx)接口並實現您自己的序列化/反序列化操作。這個問題的大部分答案似乎與我的一致:http://stackoverflow.com/questions/3840803/how-to-output-hex-numbers-via-xml-serialization-in-c – JLRishe