internal static void WriteDateTimeString(TextWriter writer, DateTime value, TimeSpan offset, DateTimeKind kind) { long num = JsonConvert.ConvertDateTimeToJavaScriptTicks(value, offset); writer.Write("\"\\/Date("); writer.Write(num); switch (kind) { case 0: case 2: { writer.Write((offset.get_Ticks() < 0L) ? "-" : "+"); int num2 = Math.Abs(offset.get_Hours()); if (num2 < 10) { writer.Write(0); } writer.Write(num2); int num3 = Math.Abs(offset.get_Minutes()); if (num3 < 10) { writer.Write(0); } writer.Write(num3); break; } } writer.Write(")\\/\""); }
internal static void WriteDateTimeString(TextWriter writer, DateTime value, TimeSpan offset, DateTimeKind kind, DateFormatHandling format) { if (format == DateFormatHandling.MicrosoftDateFormat) { long num = JsonConvert.ConvertDateTimeToJavaScriptTicks(value, offset); writer.Write("\"\\/Date("); writer.Write(num); switch (kind) { case DateTimeKind.Unspecified: if (value != DateTime.MaxValue && value != DateTime.MinValue) { JsonConvert.WriteDateTimeOffset(writer, offset, format); break; } else { break; } case DateTimeKind.Local: JsonConvert.WriteDateTimeOffset(writer, offset, format); break; } writer.Write(")\\/\""); } else { writer.Write("\""); writer.Write(value.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFF", (IFormatProvider)CultureInfo.InvariantCulture)); switch (kind) { case DateTimeKind.Utc: writer.Write("Z"); break; case DateTimeKind.Local: JsonConvert.WriteDateTimeOffset(writer, offset, format); break; } writer.Write("\""); } }
internal static void WriteDateTimeString(TextWriter writer, DateTime value, TimeSpan offset, DateTimeKind kind) { long javaScriptTicks = JsonConvert.ConvertDateTimeToJavaScriptTicks(value, offset); writer.Write("\"\\/Date("); writer.Write(javaScriptTicks); if (kind == DateTimeKind.Local || kind == DateTimeKind.Unspecified) { writer.Write((offset.Ticks < (long)0 ? "-" : "+")); int num = Math.Abs(offset.Hours); if (num < 10) { writer.Write(0); } writer.Write(num); int num1 = Math.Abs(offset.Minutes); if (num1 < 10) { writer.Write(0); } writer.Write(num1); } writer.Write(")\\/\""); }
internal static long ConvertDateTimeToJavaScriptTicks(DateTime dateTime) { return(JsonConvert.ConvertDateTimeToJavaScriptTicks(dateTime, true)); }