页面上向 session 存入值,但在 dll 中使用HttpContext.Current.Session获取不到,因为 HttpContext.Current.Session=null
怎么解决

解决方案 »

  1.   

    http://topic.csdn.net/t/20060702/12/4855327.html
      

  2.   

    先在dll里定义session,再在页面取值,再设置
      

  3.   

    我已经在页面 Page.Session.Add() 存入了,这时的 Page.Session 肯定是不为 null。
    其他的 .aspx 都是继承 CheckPagepublic class CheckPage : Page
    {
        public CheckPage()
        {
            //调用 dll 里的 UserManager.GetUser(),异常
        }
    }//dll
    public class UserManager
    {
        public User GetUser()
        {
           //这里 HttpContext.Current.Session=null 异常
        }
    }
      

  4.   

    在网页中传一个参数嘛。public class CheckPage : Page
    {
        public CheckPage()
        {
    UserManager um = new UserManager (this);
            //调用 dll 里的 UserManager.GetUser(),异常
             
        }
    }[CODE=C#]//dll
    public class UserManager
    {
    private Page page;
    public UserManager(Page dd)
    {
    page=dd;
    }
        public User GetUser()
        {
           //page.Session["user"]
        }
    }
      

  5.   

    看看这篇文章吧。http://blog.csdn.net/wonsoft/archive/2009/01/23/3851594.aspx上面的例子有忘了把注释删除了。[CODE=C#]
    //在页面中调用时
    public class CheckPage : Page
    {
        public CheckPage()
        {
            UserManager um = new UserManager (this);
            string usr = um.GetUser();
            //具体处理         
        }
    }
    [CODE]
    [CODE=C#] 
    //dll 实现类
    public class UserManager 

        private Page page; 
        public UserManager(Page dd) 
        { 
           page=dd; 
        } 
        public User GetUser() 
        { 
          //page.Session["user"] 
        } 

    [Code]