[Mono-bugs] [Bug 690475] New: Unexpected XmlConvert.ToDateTime(string, XmlDateTimeSerializationMode) behaviour
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Thu Apr 28 03:39:27 EDT 2011
https://bugzilla.novell.com/show_bug.cgi?id=690475
https://bugzilla.novell.com/show_bug.cgi?id=690475#c0
Summary: Unexpected
XmlConvert.ToDateTime(string,XmlDateTimeSerializationM
ode) behaviour
Classification: Mono
Product: Mono: Class Libraries
Version: unspecified
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Sys.XML
AssignedTo: atsushi at ximian.com
ReportedBy: a.selle at subsembly.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Blocker: ---
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gecko/20100101
Firefox/4.0
When converting a UTC time specification using the following method call:
XmlConvert.ToDateTime("2009-12-15T08:44:05.2700544Z",
XmlDateTimeSerializationMode.Local);
the method produces the following exception:
System.FormatException: Invalid format string
at System.DateTime.ParseExact (System.String s, System.String[] formats,
IFormatProvider provider, DateTimeStyles style) [0x0005c] in
/home/jon/Development/mono-droid/mono/mcs/class/corlib/System/DateTime.cs:1761
at System.Xml.XmlConvert.ToDateTime (System.String s, System.String[]
formats, DateTimeStyles style) [0x00000] in
/home/jon/Development/mono-droid/mono/mcs/class/System.XML/System.Xml/XmlConvert.cs:403
at System.Xml.XmlConvert.ToDateTime (System.String s, System.String[]
formats) [0x00000] in
/home/jon/Development/mono-droid/mono/mcs/class/System.XML/System.Xml/XmlConvert.cs:397
at System.Xml.XmlConvert.ToDateTime (System.String value,
XmlDateTimeSerializationMode mode) [0x0001d] in
/home/jon/Development/mono-droid/mono/mcs/class/System.XML/System.Xml/XmlConvert.cs:371
..
The Mono implementation of this method requires that a local date time
specification is passed to the method in order to work successfully. This
behaviour, however, is different to the documented (and implemented) Microsoft
NET Framework behaviour where the parameter XmlDateTimeSerializationMode is
documented as:
"One of the XmlDateTimeSerializationMode values that specify whether the date
should be converted to local time or preserved as Coordinated Universal Time
(UTC), if it is a UTC date."
Thus the expected behaviour (which is also the actual behaviour of the MS .NET
Framework) would be that the UTC date time specification is parsed
successfully, and then converted to a local date time representation which is
returned to the caller.
Reproducible: Always
Steps to Reproduce:
Just call
XmlConvert.ToDateTime("2009-12-15T08:44:05.2700544Z",
XmlDateTimeSerializationMode.Local);
Actual Results:
System.FormatException: Invalid format string
Expected Results:
The UTC date time specification whould be parsed successfully, and then
converted to a local DateTime instance which is returned to the caller.
I observed this when working with Mono for Android, but I think it probably
applies to all Mono class library implementations.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list