문제

I am trying to use MiniProfiler for my MVC application which is using Oracle DB. Here is my global.asax .

protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();    
        WebApiConfig.Register(GlobalConfiguration.Configuration);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);            
         MiniProfiler.Start(); //or any number of other checks, up to you 

    }
    protected void Application_PreRequestHandlerExecute(object sender, EventArgs e)
    {
        DevExpressHelper.Theme = "Metropolis";
        MiniProfiler.Stop(); //stop as early as you can, even earlier with MvcMiniProfiler.MiniProfiler.Stop(discardResults: true);

    }

When application starts i am getting :

"Request is not available in this context"

도움이 되었습니까?

해결책

You are getting this error because you are running MiniProfiler.Start() in the wrong place. You need to run MiniProfiler.Start() as part of Application_BeginRequest. Move it to this function and it should work.

When you run it as part of Application_Start it fails, because it is trying to access HttpContext.Current, which is not accessible in Application_Start.

In the context of MiniProfiler, Application_Start is a good place to make any global MiniProfiler.Setting customizations that you would like to have in place for all requests.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top