sto usando XDocument per creare un file XML, come segue:Come creare XElement data che rappresenta in DateTime come tipo xs: Data
var d = DateTime.Now;
var xDocument = new XDocument(new XElement("ThisIsADate", d));
Tuttavia, l'XML risultante rappresenta la data d con i xs: formato datetime (es. "2012-05-11T00: 00: 00"). Cioè, include informazioni sul tempo.
Tuttavia, il mio XML deve corrispondere al mio schema XML, che definisce l'elemento come di tipo "xs: date". Di conseguenza, il file viene rifiutato quando convalidato rispetto allo schema, a causa delle informazioni sul tempo extra.
Come posso risolvere questo? So che potrei semplicemente formattare la data usando me stesso ToString() con un formato, ma questo non può essere il modo "giusto" per farlo, sicuramente. Non ci si può aspettare che sappia come formattare una data come data XML valida: questo è il lavoro delle parti del framework relative all'XML.
Edit: si prega di notare che io faccio sanno come formattare una data utilizzando ToString(), e so anche che cosa stringa di formato mi avrebbe dato il risultato giusto. Questa non è la risposta che sto cercando. Sto cercando una funzione/metodo/classe che capisca cosa sia una xs: date (ecc.) E che supporti quei tipi di codifiche.
Per essere chiari, non sto cercando di "averlo fatto", sto cercando di "farlo bene". E reinventare la ruota XML non significa "farlo nel modo giusto" nel mio libro.
credo si avrebbe bisogno di specificare il formato utilizzando 'ToString()' altro il suo solo convertendo l'oggetto si passa alla sua variante stringa dal '.ToString()' in modo da avere a passare in costume format – V4Vendetta