Tengo un esquema XSD para algunos servicios RESTful. Cuando se utiliza junto con xsd.exe
herramienta para generar código C#, XSD de xs:date
genera el siguiente código:Force XmlSerializer para serializar DateTime como 'AAAA-MM-DD hh: mm: ss'
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, DataType="date")]
public System.DateTime time {
get {
return this.timeField;
}
set {
this.timeField = value;
}
}
cuando deserializar XML a objetos utilizando XmlSerializer
todo parece estar bien. El problema al que me enfrento es que el servicio espera que las fechas se formateen como YYYY-MM-DD hh:mm:ss
y el código generado por XSD parece producir solo YYYY-MM-DD
.
Si modifico XSD manualmente al tipo xs:dateTime
, el código C# generado produce: 2010-08-20T20:07:03.915039Z
.
Básicamente, ¿cómo fuerzo la serialización para producir YYYY-MM-DD hh:mm:ss
? ¿Hay algo que hacer con XSD o hay algo que pueda hacer para alterar el código de C# generado?
trata de un error en el XSD, el tipo xs: 'date' se describe explícitamente para referirse a un * fecha *, sin la parte de tiempo! – skolima
Mira en http://stackoverflow.com/questions/101533/serializing-datetime-to-time-without-milliseconds-and-gmt?answertab=votes#tab-top – TNT