/// <summary> /// /// </summary> /// <param name="dto"></param> /// <param name="prec"></param> /// <param name="includeOffset">Whether to include the timezone offset.</param> /// <returns></returns> public static PartialTime FromDateTimeOffset(DateTimeOffset dto, PartialPrecision prec = PartialPrecision.Fraction, bool includeOffset = false) { string formatString; switch (prec) { case PartialPrecision.Hour: formatString = "HH"; break; case PartialPrecision.Minute: formatString = "HH:mm"; break; case PartialPrecision.Second: formatString = "HH:mm:ss"; break; case PartialPrecision.Fraction: default: formatString = "HH:mm:ss.FFFFFFF"; break; } if (includeOffset) { formatString += "K"; } var representation = dto.ToString(formatString); return(Parse(representation)); }
public static PartialDate FromDateTimeOffset(DateTimeOffset dto, PartialPrecision prec = PartialPrecision.Day, bool includeOffset = false) { string formatString; switch (prec) { case PartialPrecision.Year: formatString = "yyyy"; break; case PartialPrecision.Month: formatString = "yyyy-MM"; break; case PartialPrecision.Day: default: formatString = "yyyy-MM-dd"; break; } if (includeOffset) { formatString += "K"; } var representation = dto.ToString(formatString); return(Parse(representation)); }