Tôi đã tạo tệp lớp C# bằng cách sử dụng tệp XSD làm đầu vào. Một trong những đặc tính của tôi trông như thế này:Nối tiếp DateTime thành thời gian không có mili giây và gmt
private System.DateTime timeField;
[System.Xml.Serialization.XmlElementAttribute(DataType="time")]
public System.DateTime Time {
get {
return this.timeField;
}
set {
this.timeField = value;
}
}
Khi đăng, các nội dung của tập tin bây giờ trông như thế này:
<Time>14:04:02.1661975+02:00</Time>
Có thể, với XmlAttributes trên tài sản, để có nó làm cho không mili giây và giá trị GMT như thế này?
<Time>14:04:02</Time>
Điều này có thể xảy ra hay tôi cần phải hack cùng một số loại xsl/xpath-replace-magic sau khi lớp học đã được sắp xếp theo thứ tự? Nó không phải là một giải pháp để thay đổi đối tượng thành String, bởi vì nó được sử dụng như một DateTime trong phần còn lại của ứng dụng và cho phép chúng ta tạo một biểu diễn xml từ một đối tượng bằng cách sử dụng phương thức XmlSerializer.Serialize() .
Lý do tôi cần xóa thông tin bổ sung khỏi trường là hệ thống nhận không tuân theo tiêu chuẩn w3c cho kiểu dữ liệu thời gian.
Nhìn vào http://stackoverflow.com/questions/3534525/force-xmlserializer-to-serialize-datetime-as-yyyy-mm-dd-hhmmss – TNT