/// <summary>
/// The recording time is China time, but running CUIT with CI is America time.
/// </summary>
/// <param name="inputDateString">China input date time, e.g, "2011-7-18"</param>
/// <returns></returns>
public static DateTime GetCIServerInputDateTime(string inputDateString)
{
if (!TimeZone.CurrentTimeZone.StandardName.Equals("China Standard Time"))
{
// America server time
DateTime dateTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now, TimeZoneInfo.Local);
// China time
dateTime = TimeZoneInfo.ConvertTimeFromUtc(dateTime, TimeZoneInfo.FindSystemTimeZoneById("China Standard Time"));
// Input China datetime
DateTime inputChinaDateTime =
DateTime.Parse(inputDateString).Add(new TimeSpan(dateTime.Hour, dateTime.Minute, dateTime.Second));
// Convert to input America datetime
DateTime inputAmericaDateTime = TimeZoneInfo.ConvertTime(inputChinaDateTime,
TimeZoneInfo.FindSystemTimeZoneById(
"China Standard Time"),
TimeZoneInfo.Local);
return inputAmericaDateTime;
}
return DateTime.Parse(inputDateString);
}