好的,我有点卡在这个上面。我认为我的问题在于页面的生命周期,但我不确定,也不确定如何解决问题。
我有一个需要访问Session的静态方法。但是,在AJAX调用的中间调用此方法。代码如下所示:
$(object).click(function() {
Library.Ajax.GetData(someParameter, function(results) {
//do call back code
});
});
网络方法:
[WebMethod]
public List<string> GetData(string parameter)
{
return new Library.Class().GetData(parameter);
}
C#类:
public List<string> GetData(string parameter)
{
//working with parameter & stuff
CallStaticMethod();
//return things
}
静态方法:
public static CustomClass CallStaticMethod()
{
var data = HttpContext.Current.Session["variable"];
//do other things
}
在页面加载时,会话有数据。调用此静态方法时,页面未回发或重新加载。但是,在每个方法调用中放置一个断点表明HttpContext.Current.Session在被调用时为空。
在理解页面生命周期时,我确实很可怕。任何人都可以了解这里发生的事情吗?我能做些什么来解决这个问题?
答案 0 :(得分:4)
怎么样?
[WebMethod(EnableSession = true)]
public List<string> GetData(string parameter)