Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 从QueueBackgroundWorkItem访问和设置应用程序变量_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 从QueueBackgroundWorkItem访问和设置应用程序变量

Asp.net mvc 从QueueBackgroundWorkItem访问和设置应用程序变量,asp.net-mvc,Asp.net Mvc,是否可以通过名为usingHostingEnvironment.QueueBackgroundWorkItem的方法访问ASP.NET MVC应用程序级变量 理想情况下,我希望能够做到以下几点: if (HttpContext.Current.Application["SomeCachedData"] == null) { HostingEnvironment.QueueBackgroundWorkItem(ct => { var someCachedDat

是否可以通过名为using
HostingEnvironment.QueueBackgroundWorkItem
的方法访问ASP.NET MVC应用程序级变量

理想情况下,我希望能够做到以下几点:

if (HttpContext.Current.Application["SomeCachedData"] == null)
{
    HostingEnvironment.QueueBackgroundWorkItem(ct =>
    {
        var someCachedData = LongRunningDataLoadMethod();
        HttpContext.Current.Application["SomeCachedData"] = someCachedData;
    });
}

我知道我可以使用其他缓存库来实现这一点,但我想限制解决方案的复杂性。

我想不出为什么不这样做。你为什么不试试呢?它应该和尝试一样简单。我在发布问题之前就尝试过了。它似乎不起作用,但我想可能有一些我不知道(也无法通过搜索找到)的技巧,你说它不起作用是什么意思?错误还是什么?首先:QueueBackgroundWorkItem接受返回回调的任务;当回调返回时,工作项将被视为已完成。但是你没有按照我的计划返回任务,我不认为为什么不。你为什么不试试呢?它应该和尝试一样简单。我在发布问题之前就尝试过了。它似乎不起作用,但我想可能有一些我不知道(也无法通过搜索找到)的技巧,你说它不起作用是什么意思?错误还是什么?首先:QueueBackgroundWorkItem接受返回回调的任务;当回调返回时,工作项将被视为已完成。但您没有按照返回任务