最近在 Azure 中部署的一个项目开始每天抛出两三个这样的异常。我的调查表明,这通常是由具有未来时间戳的程序集引起的,通常是由部署到其他时区的机器引起的(这是一个很好的资源)。在该应用程序上线的一年+之前,我们还没有遇到过这个问题,它收到的流量比少数例外情况所暗示的要多得多。
我在启用远程桌面的情况下重新部署并检查了我们的 dll 的时间戳以及 \Windows\Microsoft.NET 和 \Windows\assembly 目录的内容,但没有找到任何“未来”时间戳。在这一点上,我被困住了,我会很感激你的想法。
堆栈跟踪:
System.ArgumentOutOfRangeException:指定的参数超出了有效值的范围。参数名称: utcDate at System.Web.HttpCachePolicy.UtcSetLastModified(DateTime utcDate) at System.Web.HttpCachePolicy.SetLastModified(DateTime date) at System.Web.UI.Page.InitOutputCache(OutputCacheParameters cacheSettings) at System.Web.UI.Page .ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 在 System.Web.UI.Page.ProcessRequest() 在 System.Web.UI.Page.ProcessRequest(HttpContext context) 在 System.Web.Mvc.OutputCacheAttribute.OnResultExecuting(ResultExecutingContext filterContext) 在System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter 过滤器,ResultExecutingContext preContext,Func
1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func
1 续)在 System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList
1 个过滤器,ActionResult actionResult) 在 System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass27.b__24(IAsyncResult asyncResult) 在 System.Web.Mvc.AsyncController.<>c__DisplayClass19.b__14(IAsyncResult asyncResult) 在 System.Web.Mvc .Async.AsyncResultWrapper.<>c__DisplayClass4.b__3(IAsyncResult ar) at System.Web.Mvc.AsyncController.EndExecuteCore(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.b__3(IAsyncResult ar) at System .Web.Mvc.MvcHandler.<>c__DisplayClass6.<>c__DisplayClassb.b__4(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.b__3(IAsyncResult ar) at System.Web.HttpApplication.CallHandlerExecutionStep.System .Web.HttpApplication.IExecutionStep.Execute() 在 System.Web。HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)