我正在序列化包含DateTime属性的类.
public DateTime? Delivered { get; set; }
Run Code Online (Sandbox Code Playgroud)
序列化Delivered节点包含DateTime格式如下:
2008-11-20T00:00:00
Run Code Online (Sandbox Code Playgroud)
如何更改此属性使其如下所示:
2008-11-20 00:00:00
Run Code Online (Sandbox Code Playgroud)
提前致谢
我试图自动化这个XmlSerializer解决方案模式.请参阅下面的更新
是否可以基于现有属性引入新属性并使用PostSharp(或者其他一些AOP工具)修改现有属性的属性?
最好在构建时进行这种修改.
示例源属性:
public class TestType {
// Original version
[XmlAttribute()]
public DateTime ReqDateTime {
get { return this.reqDateTimeField; }
set { this.reqDateTimeField = value; }
}
}
Run Code Online (Sandbox Code Playgroud)
期望的结果(省略类声明):
// Modified version
// <original property> = "ReqDateTime"
// <original property> marked as XmlIgnore
// New property with name "<original property>ForXml" is introduced with code as per below
// XmlAttribute moved to the newly introduced <original property>ForXml property with parameter "<original property>"
[XmlIgnore()]
public DateTime ReqDateTime { …Run Code Online (Sandbox Code Playgroud)