/// <exclude /> public static void Application_EndRequest(object sender, EventArgs e) { var context = ((HttpApplication)sender).Context; try { ServiceLocator.DisposeRequestServicesScope(context); if (LogRequestDetails && context.Items.Contains("Global.asax timer")) { int startTimer = (int)context.Items["Global.asax timer"]; string requestPath = context.Request.Path; Log.LogVerbose("End request", $"{requestPath} - took {Environment.TickCount - startTimer} ms"); } } finally { ThreadDataManager.FinalizeThroughHttpContext(); } }