如何使用HttpContext进行异步调用

时间:2013-09-23 09:00:15

标签: c# asynchronous

我正在对我希望使用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

1 个答案:

答案 0 :(得分:1)

在线程上设置了HttpContext.Current,这意味着你必须将它传递给你的Async方法才能使用它作为处理异步方法的线程不是ASP.NET的线程创建来处理您的请求。