如何在 Task.Factory.StartNew 中访问 HttpContext.Current?

编程入门 行业动态 更新时间:2024-10-17 15:22:16
本文介绍了如何在 Task.Factory.StartNew 中访问 HttpContext.Current?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我想在我的 asp 应用程序中访问 HttpContext.Current

I want to access HttpContext.Current in my asp application within

Task.Factory.Start(() =>{ //HttpContext.Current is null here });

我该如何解决这个错误?

How can I fix this error?

推荐答案

Task.Factory.Start 将启动一个新的 Thread 并且因为 HttpContext.Context 是线程本地的,它不会自动复制到新的 Thread 中,因此您需要手动传递它:

Task.Factory.Start will fire up a new Thread and because the HttpContext.Context is local to a thread it won't be automaticly copied to the new Thread, so you need to pass it by hand:

var task = Task.Factory.StartNew( state => { var context = (HttpContext) state; //use context }, HttpContext.Current);

更多推荐

如何在 Task.Factory.StartNew 中访问 HttpContext.Current?

本文发布于:2023-11-13 15:04:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1584656.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:如何在   Task   Factory   Current   HttpContext

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!