我正在对我希望使用HttpContext来获取和设置会话变量的方法进行异步调用。但是当我使用它时,HttpContext显示为null。那么如何使用HttpContext?
代码:
public void SessionsFetchAllWatchNowAsync()
{
string aaa = Convert.ToString(HttpContext.Current.Session["UserID"]);
}
protected void Page_Load(object sender, EventArgs e)
{
Session[Utility.UserID] = 0;
Action<StartPage> notifyTask = null;
notifyTask = new Action<StartPage>((o) => new StartPage().SessionsFetchAllWatchNowAsync());
if (notifyTask != null)
notifyTask.BeginInvoke(null, null, null);
}
谢谢,
Dalvir
答案 0 :(得分:1)
在线程上设置了HttpContext.Current
,这意味着你必须将它传递给你的Async方法才能使用它作为处理异步方法的线程不是ASP.NET的线程创建来处理您的请求。