/// <exclude /> public static void ApplicationStartInitialize(bool displayDebugInfo = false) { ThreadDataManager.InitializeThroughHttpContext(); if (displayDebugInfo) { Log.LogVerbose("Global.asax", "--- Web Application Start, {0} Id = {1} ---", DateTime.Now.ToLongTimeString(), AppDomain.CurrentDomain.Id); } PerformanceCounterFacade.SystemStartupIncrement(); using (GlobalInitializerFacade.GetPreInitHandlersScope()) { ApplicationStartupFacade.FireConfigureServices(ServiceLocator.ServiceCollection); ServiceLocator.BuildServiceProvider(); ServiceLocator.CreateRequestServicesScope(HttpContext.Current); ApplicationStartupFacade.FireBeforeSystemInitialize(ServiceLocator.ServiceProvider); } TempDirectoryFacade.OnApplicationStart(); HostnameBindingsFacade.Initialize(); ApplicationStartupFacade.FireSystemInitialized(ServiceLocator.ServiceProvider); ThreadDataManager.FinalizeThroughHttpContext(); }
/// <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(); } }