我用Session保存当前用户信息Session["UserInfo"]BasePage类继承System.Web.UI.Page
用 
public TUser CurrentUser
        {
            get
            {
                return (TUser)Session["UserInfo"];
            }
        }
页面继承BasePage类
用这个属性获取当前获取。现在我ajax请求到ahsx一般处理文件。想获取当前用户。应该这么设计呢?

解决方案 »

  1.   

    那你直接用(TUser)Session["UserInfo"];获取不行?
      

  2.   

    1.要在一般处理程序中获取其他页面的session值,需要引用名空间:using System.Web.SessionState;2.然后继承一个接口:IRequiresSessionState,如图:3.然后就可以获得session值了:HttpContext context = new HttpContext();string s =context.Session["Verifycode"].ToString();
      

  3.   

    有两种途径 一种就是ashx换成 aspx 在load方法结尾处 response.end()还有就是 ashx 实现 session调用声明. 也即是IRequiresSessionState接口(没有任何方法的接口),
    ashx就少了页面的复杂生命周期和一些属性.其实 ashx用到了session 那就跟aspx没啥区别了.不纠结的话 就直接 aspx果断替换.
      

  4.   

    关键我有很多ashx.每次都(TUser)Session["UserInfo"]的话不方便.