///<include file='doc\XmlConvert.uex' path='docs/doc[@for="XmlConvert.ToDateTime3"]/*' /> /// <devdoc> /// <para>[To be supplied.]</para> /// </devdoc> public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { XsdDateTime xsdDateTime = new XsdDateTime(s, XsdDateTimeFlags.AllXsd); DateTime dt = (DateTime)xsdDateTime; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: dt = SwitchToLocalTime(dt); break; case XmlDateTimeSerializationMode.Utc: dt = SwitchToUtcTime(dt); break; case XmlDateTimeSerializationMode.Unspecified: dt = new DateTime(dt.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException(SR.Format(SR.Sch_InvalidDateTimeOption, dateTimeOption, "dateTimeOption")); } return(dt); }
///<include file='doc\XmlConvert.uex' path='docs/doc[@for="XmlConvert.ToString14"]/*' /> /// <devdoc> /// <para>[To be supplied.]</para> /// </devdoc> public static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: value = SwitchToLocalTime(value); break; case XmlDateTimeSerializationMode.Utc: value = SwitchToUtcTime(value); break; case XmlDateTimeSerializationMode.Unspecified: value = new DateTime(value.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException(SR.Format(SR.Sch_InvalidDateTimeOption, dateTimeOption, "dateTimeOption")); } XsdDateTime xsdDateTime = new XsdDateTime(value, XsdDateTimeFlags.DateTime); return(xsdDateTime.ToString()); }
public static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption) { // Unlike usual DateTime formatting, it preserves // MaxValue/MinValue as is. switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: return((value == DateTime.MinValue ? DateTime.MinValue : value == DateTime.MaxValue ? value : value.ToLocalTime()).ToString( "yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz", CultureInfo.InvariantCulture)); case XmlDateTimeSerializationMode.RoundtripKind: return(value.ToString( "yyyy-MM-ddTHH:mm:ss.FFFFFFFK", CultureInfo.InvariantCulture)); default: return(value.ToString( "yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz", CultureInfo.InvariantCulture)); case XmlDateTimeSerializationMode.Utc: return((value == DateTime.MinValue ? DateTime.MinValue : value == DateTime.MaxValue ? value : value.ToUniversalTime()).ToString( "yyyy-MM-ddTHH:mm:ss.FFFFFFFZ", CultureInfo.InvariantCulture)); case XmlDateTimeSerializationMode.Unspecified: return(value.ToString( "yyyy-MM-ddTHH:mm:ss.FFFFFFF", CultureInfo.InvariantCulture)); } }
internal static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: value = SwitchToLocalTime(value); break; case XmlDateTimeSerializationMode.Utc: value = SwitchToUtcTime(value); break; case XmlDateTimeSerializationMode.Unspecified: value = new DateTime(value.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException( //TODO: string.Format( "The '{0}' value for the 'dateTimeOption' parameter is not an allowed value for the 'XmlDateTimeSerializationMode' enumeration.", "dateTimeOption")); } XsdDateTime xsdDateTime = new XsdDateTime(value, XsdDateTimeFlags.DateTime); return(xsdDateTime.ToString()); }
public static DateTime ToDateTime(string value, XmlDateTimeSerializationMode mode) { string modestr = null; DateTime dt; switch (mode) { case XmlDateTimeSerializationMode.Local: dt = ToDateTime(value, localDateTimeFormats); return(dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToLocalTime()); case XmlDateTimeSerializationMode.RoundtripKind: return(ToDateTime(value, roundtripDateTimeFormats)); case XmlDateTimeSerializationMode.Utc: dt = ToDateTime(value, utcDateTimeFormats); return(dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToUniversalTime()); case XmlDateTimeSerializationMode.Unspecified: #if TARGET_JVM return(ToDateTime(value, unspecifiedDateTimeFormats)); #endif default: return(ToDateTime(value, defaultDateTimeFormats)); } }
internal static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { XsdDateTime xsdDateTime = new XsdDateTime(s, XsdDateTimeFlags.AllXsd); DateTime dt = xsdDateTime; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: dt = SwitchToLocalTime(dt); break; case XmlDateTimeSerializationMode.Utc: dt = SwitchToUtcTime(dt); break; case XmlDateTimeSerializationMode.Unspecified: dt = new DateTime(dt.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException( //TODO: string.Format( "The '{0}' value for the 'dateTimeOption' parameter is not an allowed value for the 'XmlDateTimeSerializationMode' enumeration.", "dateTimeOption")); } return(dt); }
public void XmlDateTimeSerializationModeSeveralFormats() { XmlDateTimeSerializationMode m = XmlDateTimeSerializationMode.RoundtripKind; XmlConvert.ToDateTime("0001", m); XmlConvert.ToDateTime("0001Z", m); XmlConvert.ToDateTime("0001+09:00", m); XmlConvert.ToDateTime("0001-02", m); XmlConvert.ToDateTime("0001-02Z", m); XmlConvert.ToDateTime("0001-02+09:00", m); XmlConvert.ToDateTime("0001-02-03", m); XmlConvert.ToDateTime("0001-02-03Z", m); XmlConvert.ToDateTime("0001-02-03+09:00", m); XmlConvert.ToDateTime("--02-03", m); XmlConvert.ToDateTime("--02-03Z", m); XmlConvert.ToDateTime("--02-03+09:00", m); XmlConvert.ToDateTime("---03", m); XmlConvert.ToDateTime("---03Z", m); XmlConvert.ToDateTime("---03+09:00", m); XmlConvert.ToDateTime("10:20:30", m); XmlConvert.ToDateTime("10:20:30Z", m); XmlConvert.ToDateTime("10:20:30+09:00", m); XmlConvert.ToDateTime("0001-02-03T10:20:30", m); XmlConvert.ToDateTime("0001-02-03T10:20:30Z", m); XmlConvert.ToDateTime("0001-02-03T10:20:30+09:00", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.00", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.00Z", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.00+09:00", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.0000", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.0000Z", m); XmlConvert.ToDateTime("0001-02-03T10:20:30.0000+09:00", m); try { XmlConvert.ToDateTime("0001-02-03T", m); Assert.Fail("#1"); } catch (FormatException) { } try { XmlConvert.ToDateTime("0001-02-03T10:20", m); Assert.Fail("#2"); } catch (FormatException) { } try { XmlConvert.ToDateTime("0001-02-03T10:20:30.", m); Assert.Fail("#3"); } catch (FormatException) { } }
public static DateTime ToDateTime(string textValue, XmlDateTimeSerializationMode mode) { try { return(XmlConvert.ToDateTime(textValue, mode)); } catch (Exception) { return(DateTime.Parse(textValue)); } }
public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: return(ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.AssumeLocal).ToLocalTime()); case XmlDateTimeSerializationMode.RoundtripKind: return(ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind)); case XmlDateTimeSerializationMode.Utc: return(ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.AssumeUniversal).ToUniversalTime()); default: return(new DateTime(ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind).Ticks, DateTimeKind.Unspecified)); } }
public static DateTime ToDateTime(string value, XmlDateTimeSerializationMode mode) { DateTime dt; switch (mode) { case XmlDateTimeSerializationMode.Local: dt = ToDateTime(value, localDateTimeFormats); return(dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToLocalTime()); case XmlDateTimeSerializationMode.RoundtripKind: return(ToDateTime(value, roundtripDateTimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind)); case XmlDateTimeSerializationMode.Utc: dt = ToDateTime(value, utcDateTimeFormats); return(dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToUniversalTime()); case XmlDateTimeSerializationMode.Unspecified: return(ToDateTime(value, unspecifiedDateTimeFormats)); default: return(ToDateTime(value, defaultDateTimeFormats)); } }
public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { DateTime dt; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: dt = ToDateTime(s, localDateTimeFormats); return(new DateTime(dt.Ticks, DateTimeKind.Local)); case XmlDateTimeSerializationMode.RoundtripKind: return(ToDateTime(s, roundtripDateTimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind)); case XmlDateTimeSerializationMode.Utc: dt = ToDateTime(s, utcDateTimeFormats); return(new DateTime(dt.Ticks, DateTimeKind.Utc)); case XmlDateTimeSerializationMode.Unspecified: return(ToDateTime(s, unspecifiedDateTimeFormats)); default: return(ToDateTime(s, defaultDateTimeFormats)); } }
///<include file='doc\XmlConvert.uex' path='docs/doc[@for="XmlConvert.ToDateTime3"]/*' /> /// <devdoc> /// <para>[To be supplied.]</para> /// </devdoc> public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { XsdDateTime xsdDateTime = new XsdDateTime(s, XsdDateTimeFlags.AllXsd); DateTime dt = (DateTime)xsdDateTime; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: dt = SwitchToLocalTime(dt); break; case XmlDateTimeSerializationMode.Utc: dt = SwitchToUtcTime(dt); break; case XmlDateTimeSerializationMode.Unspecified: dt = new DateTime(dt.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException(SR.Format(SR.Sch_InvalidDateTimeOption, dateTimeOption, "dateTimeOption")); } return dt; }
public static string ToString (DateTime value, XmlDateTimeSerializationMode dateTimeOption) { // Unlike usual DateTime formatting, it preserves // MaxValue/MinValue as is. switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: return (value == DateTime.MinValue ? DateTime.MinValue : value == DateTime.MaxValue ? value : value.ToLocalTime ()).ToString ( "yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz", CultureInfo.InvariantCulture); case XmlDateTimeSerializationMode.RoundtripKind: return value.ToString ( "yyyy-MM-ddTHH:mm:ss.FFFFFFFK", CultureInfo.InvariantCulture); default: return value.ToString ( "yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz", CultureInfo.InvariantCulture); case XmlDateTimeSerializationMode.Utc: return (value == DateTime.MinValue ? DateTime.MinValue : value == DateTime.MaxValue ? value : value.ToUniversalTime ()).ToString ( "yyyy-MM-ddTHH:mm:ss.FFFFFFFZ", CultureInfo.InvariantCulture); case XmlDateTimeSerializationMode.Unspecified: return value.ToString ( "yyyy-MM-ddTHH:mm:ss.FFFFFFF", CultureInfo.InvariantCulture); } }
public static DateTime ToDateTime (string s, XmlDateTimeSerializationMode dateTimeOption) { DateTime dt; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: dt = ToDateTime (s, localDateTimeFormats); return new DateTime (dt.Ticks, DateTimeKind.Local); case XmlDateTimeSerializationMode.RoundtripKind: return ToDateTime (s, roundtripDateTimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind); case XmlDateTimeSerializationMode.Utc: dt = ToDateTime (s, utcDateTimeFormats); return new DateTime (dt.Ticks, DateTimeKind.Utc); case XmlDateTimeSerializationMode.Unspecified: return ToDateTime (s, unspecifiedDateTimeFormats); default: return ToDateTime (s, defaultDateTimeFormats); } }
internal static DateTime ReadAppInfoAsDateTime(this XmlSchemaAnnotated annotated, string nodeName, string attributeName, XmlDateTimeSerializationMode mode, DateTime defaultValue) { var text = ReadAppInfoAsString(annotated, nodeName, attributeName); if (text == null) { return(defaultValue); } return(CremaXmlConvert.ToDateTime(text, mode)); }
public static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption);
public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption) { XsdDateTime time = new XsdDateTime(s, XsdDateTimeFlags.AllXsd); DateTime time2 = (DateTime) time; switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: return SwitchToLocalTime(time2); case XmlDateTimeSerializationMode.Utc: return SwitchToUtcTime(time2); case XmlDateTimeSerializationMode.Unspecified: return new DateTime(time2.Ticks, DateTimeKind.Unspecified); case XmlDateTimeSerializationMode.RoundtripKind: return time2; } throw new ArgumentException(Res.GetString("Sch_InvalidDateTimeOption", new object[] { dateTimeOption, "dateTimeOption" })); }
public static XmlElement AddText(this XmlElement element, DateTime value, XmlDateTimeSerializationMode dateTimeOption) { return(_AddText(element, XmlConvert.ToString(value, dateTimeOption))); }
/// <summary> /// Converts the specified <paramref name="value"/> to a <see cref="System.String"/> using the <paramref name="serializationMode"/> specified. /// </summary> /// <param name="value">The <see cref="DateTime"/> value to convert.</param> /// <param name="serializationMode">One of the <see cref="XmlDateTimeSerializationMode"/> values that specify how to treat the <see cref="DateTime"/> <paramref name="value"/>.</param> /// <returns>A <see cref="System.String" /> equivalent of the <see cref="DateTime"/> <paramref name="value"/>.</returns> public static string ToString(this DateTime value, XmlDateTimeSerializationMode serializationMode) { return(XmlConvert.ToString(value, serializationMode)); }
///<include file='doc\XmlConvert.uex' path='docs/doc[@for="XmlConvert.ToString14"]/*' /> /// <devdoc> /// <para>[To be supplied.]</para> /// </devdoc> public static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: value = SwitchToLocalTime(value); break; case XmlDateTimeSerializationMode.Utc: value = SwitchToUtcTime(value); break; case XmlDateTimeSerializationMode.Unspecified: value = new DateTime(value.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException(SR.Format(SR.Sch_InvalidDateTimeOption, dateTimeOption, nameof(dateTimeOption))); } XsdDateTime xsdDateTime = new XsdDateTime(value, XsdDateTimeFlags.DateTime); return xsdDateTime.ToString(); }
public static DateTime ToDateTime(string s, XmlDateTimeSerializationMode dateTimeOption);
public static DateTime ToDateTime (string s, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: return ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.AssumeLocal).ToLocalTime(); case XmlDateTimeSerializationMode.RoundtripKind: return ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind); case XmlDateTimeSerializationMode.Utc: return ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.AssumeUniversal).ToUniversalTime(); default: return new DateTime (ToDateTime(s, datetimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind).Ticks, DateTimeKind.Unspecified); } }
public static bool TryGetAttributeAsDateTime(this XmlReader reader, string name, XmlDateTimeSerializationMode mode, out DateTime value) { var text = reader.GetAttribute(name); if (string.IsNullOrEmpty(text) == true) { value = new DateTime(); return(false); } value = CremaXmlConvert.ToDateTime(text, mode); return(true); }
public static DateTime GetAttributeAsDateTime(this XmlReader reader, string name, XmlDateTimeSerializationMode mode) { var text = reader.GetAttribute(name); if (string.IsNullOrEmpty(text) == true) { return(DateTime.MinValue); } return(CremaXmlConvert.ToDateTime(text, mode)); }
public static string ToXmlDateTime(this DateTime datetime, XmlDateTimeSerializationMode mode = XmlDateTimeSerializationMode.Utc) { return(XmlConvert.ToString(datetime, mode)); }
public DateTimeConverter(XmlDateTimeSerializationMode mode) => _mode = mode;
public static DateTime ToDateTime (string value, XmlDateTimeSerializationMode mode) { DateTime dt; switch (mode) { case XmlDateTimeSerializationMode.Local: dt = ToDateTime (value, localDateTimeFormats); return dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToLocalTime (); case XmlDateTimeSerializationMode.RoundtripKind: return ToDateTime (value, roundtripDateTimeFormats, _defaultStyle | DateTimeStyles.RoundtripKind); case XmlDateTimeSerializationMode.Utc: dt = ToDateTime (value, utcDateTimeFormats); return dt == DateTime.MinValue || dt == DateTime.MaxValue ? dt : dt.ToUniversalTime (); case XmlDateTimeSerializationMode.Unspecified: return ToDateTime (value, unspecifiedDateTimeFormats); default: return ToDateTime (value, defaultDateTimeFormats); } }
public static XmlElement AddAttribute(this XmlElement element, string name, DateTime value, XmlDateTimeSerializationMode dateTimeOption) { return(_AddAttribute(element, name, XmlConvert.ToString(value, dateTimeOption))); }
internal static DateTime ReadAppInfoAsDateTime(this XmlSchemaAnnotated annotated, string nodeName, string attributeName, XmlDateTimeSerializationMode mode) { return(ReadAppInfoAsDateTime(annotated, nodeName, attributeName, mode, DateTime.MinValue)); }
public static string ToString(DateTime value, XmlDateTimeSerializationMode dateTimeOption) { switch (dateTimeOption) { case XmlDateTimeSerializationMode.Local: value = SwitchToLocalTime(value); break; case XmlDateTimeSerializationMode.Utc: value = SwitchToUtcTime(value); break; case XmlDateTimeSerializationMode.Unspecified: value = new DateTime(value.Ticks, DateTimeKind.Unspecified); break; case XmlDateTimeSerializationMode.RoundtripKind: break; default: throw new ArgumentException(Res.GetString("Sch_InvalidDateTimeOption", new object[] { dateTimeOption, "dateTimeOption" })); } XsdDateTime time = new XsdDateTime(value, XsdDateTimeFlags.DateTime); return time.ToString(); }