DateTime.Now выдает исключение

Я получаю исключение, вызванное DateTime.Now на нашем сервере, на котором запущено несколько веб-сайтов. Это случилось со мной дважды за последние 3 дня. Действительно странно.Мне интересно, стало ли это происходить с последним обновлением Windows, и заметил ли кто-нибудь из вас подобное поведение.

Возникло исключение::

BASE EXCEPTION:
  TYPE: System.ArgumentOutOfRangeException
  MESSAGE: Value to add was out of range.
Parameter name: value
  STACK TRACE:
   at System.DateTime.Add(Double value, Int32 scale)
   at System.TimeZoneInfo.TransitionTimeToDateTime(Int32 year, TransitionTime transitionTime)
   at System.TimeZoneInfo.GetDaylightTime(Int32 year, AdjustmentRule rule)
   at System.TimeZoneInfo.GetIsDaylightSavingsFromUtc(DateTime time, Int32 Year, TimeSpan utc, AdjustmentRule rule, Boolean& isAmbiguousLocalDst)
   at System.TimeZoneInfo.GetDateTimeNowUtcOffsetFromUtc(DateTime time, Boolean& isAmbiguousLocalDst)
   at System.DateTime.get_Now()
   at (my code).FrontEnd.FrontEndPage.Page_Load(Object sender, EventArgs e) in (my code file)\code\presentation\FrontEndPage.cs:line 118
   at (my code).purchase.Page_Load(Object sender, EventArgs e) in (my code file)\purchase.aspx.cs:line 94
   at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
   at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
   at System.Web.UI.Control.OnLoad(EventArgs e)
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Код, в котором это происходит, является первой строкой в ​​if -. ] оператор:

HttpCookie loggedIn = Request.Cookies[Config.Instance.LoggedInCookieName];
if (loggedIn != null)
{
    loggedIn.Expires = DateTime.Now.AddHours(4);
    Response.Cookies.Add(loggedIn);
}

Хотя там есть AddHours и исключение говорит о DateTime.Add, я не верю, что это имеет какое-либо отношение к AddHours, но вызвано вызовом Now, как вы можете видеть в трассировки стека.

Сервер, на котором я нахожусь, работает под управлением Windows Server 2003 и работает под управлением английской (британской )локали.

Спасибо за любую помощь.

10
задан Gerard van de Ven 25 April 2012 в 23:06
поделиться