Сериализация DateTime для времени без миллисекунд и gmt
Я создал файл класса C # с использованием XSD-файла в качестве входных данных. Одно из моих свойств выглядит так:
private System.DateTime timeField;
[System.Xml.Serialization.XmlElementAttribute(DataType="time")]
public System.DateTime Time {
get {
return this.timeField;
}
set {
this.timeField = value;
}
}
После сериализации содержимое файла теперь выглядит так:
<Time>14:04:02.1661975+02:00</Time>
Возможно ли, с XmlAttributes на свойстве, чтобы он отображался без миллисекунд и значения GMT, как это?
<Time>14:04:02</Time>
Возможно ли это, или мне нужно взломать какой-нибудь xsl / xpath-replace-magic после того, как класс был сериализован?
Это не решение для изменения объекта на String, потому что он используется как DateTime в остальной части приложения и позволяет нам создать xml-представление из объекта с помощью метода XmlSerializer.Serialize ().
Причина, по которой мне нужно удалить дополнительную информацию из поля, состоит в том, что принимающая система не соответствует стандартам w3c для типа данных времени.