使用特定方法控制XML序列化格式我有一个DateTime和一个子类,我想格式化XML序列化。通常,当未指定任何内容时,DateTime的序列化将遵循当前文化,但我想以某种方式格式化DateTime(即使它不可反序列化),再次子类化。因此,给定这些类:publicclassMyClass{publicDateTimeMyDateTime{get;放;}publicMySubClassTheSubClass{得到;放;}}publicclassMySubClass{publicintID{get;放;}公共字符串名称{得到;放;如何指定输出的序列化方法:2011-9-13T10:30:00ZID-NameAreyouusingXmlSerializer?如果是这样,则不需要包含[Serializable]属性,XmlSerializer会忽略它们。您可以通过在您的类型上实现IXmlSerializable接口来自定义序列化。http://msdn.microsoft.com/en-us/library/system.xml.serialization.ixmlserializable.aspx这超出了我的想象...我没有像你一样嵌套在Xml序列化中的类型-但这应该是接近的。[XmlRoot]publicclassMyClass{[XmlElement]publicDateTimeMyDateTime{get;放;}[XmlElement]publicMySubClassTheSubClass{get;}[XmlIgnore]//因为你没有在XML片段中包含publicstringName{get;放;如果你正在做简单的Xml序列化:检查MSDNXmlSerializer。更新我错过了我想以某种方式格式化日期时间......我所做的是以下而不是实现IXmlSerializable:以上是关于C#学习教程:使用特定方法控制XML序列化格式有用并且需要了解更多关于C#学习教程,希望大家多多关注——[XmlRoot]publicclassMyClass{[XmlElement]publicstringMyDateTime{get;放;}[XmlIgnore]publicDateTimeDT{get{/*从MyDateTime返回DateTime*/}set{MyDateTime=value.ToString(/*使用格式化*/);}//ex.ToString("yyyy,MMMMdd:hh:mm")}[XmlElement]publicMySubClassTheSubClass{get;放;}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
