El uso de “FOR XML” con la serialización XML con el tipo DATETIME
-
22-09-2019 - |
Pregunta
Estoy teniendo problemas tratando de añadir algunas fechas para una clase preexistente que se carga a través de serialización XML, y no está haciendo lo que pensé que debería hacer.
Me dejó embarazada a una prueba básica con SQL de (donde EffectiveFrom y EffectiveTo se declaran como DATETIME
)
SELECT o.EffectiveFrom AS [@EffectiveFrom],
o.EffectiveTo AS [@EffectiveTo],
FROM dbo.MyObject o
FOR XML PATH('MyObject'), ROOT('ArrayOfMyObject'), type
Lo cual da XML:
<ArrayOfMyObject>
<MyObject EffectiveFrom="1977-11-23T00:00:00" EffectiveTo="2050-01-01T00:00:00" />
</ArrayOfMyObject>
A continuación, he declarado la clase como:
public class MyObject
{
[XmlAttribute("EffectiveFrom")]
public DateTime EffectiveFrom { get; set; }
[XmlAttribute("EffectiveTo")]
public DateTime EffectiveTo { get; set; }
}
Sin embargo, las propiedades no están siendo ajustado. Yo podría estar teniendo "un día gruesa" y falta de lo obvio cegadora, pero yo hubiera esperado esto de "trabajar solo" - alguna idea de por qué no es
? Will Yo realmente tiene que crear algunas propiedades de cadena que Date.ParseExact()
llamada en el conjunto, y ToString()
en el get, que marcar para serialización XML, y marcar las propiedades reales como XmlIgnore()
?
Solución 2
Aparece "trabajar solo" con SQL Server 2008, donde ya que habíamos estado utilizando SQL Server 2005 de antemano
Otros consejos
No veo una etiqueta de cierre para