DataTable.WriteXML(): Datumsformat

17/03/2009 - 12:47 von Matthias Krug | Report spam
Moin!
Meine Kenntnisse in XML beschrànken sich noch auf das notwendigste, aber
ich exportiere und importiere hàufig Daten als XML (aus DataSet oder
DataTable).

Nun möchten Anwender die XML-Daten gern als Datenquelle in Excel2007
einlesen, was zunàchst erstaunlich einfach geht und hübsch aussieht.

Ein Problem gibt es mit Datumsfeldern. Die werden mit
DataTable.WriteXML() in einem Format in die XML Datei geschrieben,
welches bei Excel2007 als "unsupported" gekennzeichnet ist.

Diese Felder werden dann in Excel nur als Text eingelesen und lassen
sich noch nicht mal in Datumsformat umwandeln.

Kann ich beim Export der Daten aus der einer DataTable direkt Einfluss
darauf nehmen, wie diese in die XML-Datei geschrieben werden; am besten
als xsd:date anstatt als xsd:datetime ?

Wenn ja, wie?

Komme beim Studium der OLH nicht richtig weiter.


Vielen Dank im Voraus!
 

Lesen sie die antworten

#1 Frank Dzaebel
17/03/2009 - 14:44 | Warnen spam
Hallo Matthias,

Diese Felder werden dann in Excel nur als Text eingelesen und lassen
sich noch nicht mal in Datumsformat umwandeln.
Kann ich beim Export der Daten aus der einer DataTable direkt Einfluss
darauf nehmen, wie diese in die XML-Datei geschrieben werden; am besten
als xsd:date anstatt als xsd:datetime ?



Zunàchst die Referenz der supporteten Excel-Formate:

[How Excel 2003 Infers XSDs when Importing XML Data]
http://msdn.microsoft.com/en-us/lib...03732.aspx

Ggf. mögliche .NET Methoden:

[Datums- und Uhrzeitstandardformatzeichenfolgen]
http://msdn.microsoft.com/de-de/lib...se3k1.aspx

Setze mal den DateTimeMode in der DateTimeMode-
Eigenschaft der DataTable-Datums-Spalte des DataSets
auf: "Unspecified". Ich vermute Du meinst das (ungeprüft).

Ansonsten müsstest Du uns ggf. noch ein paar
mehr Hintergründe sagen - es gàbe z.B. mehrere
Möglichkeiten das XML in Excel einzubinden.


ciao Frank
Dipl. Inf. Frank Dzaebel [MCP, MVP C#]
http://Dzaebel.NET

Ähnliche fragen