如何在类库中访问HttpContext.Current.Session?

Scu*_*eve 2 session class-library httpcontext system.web c#-4.0

因此,我正在创建一个类库,用于处理用户信息,如用户名,密码等.我想这样做,以便我可以使用我的任何Web应用程序引用此库,而不必不断重写用户信息部分.

在,用户信息类库,我想处理登录.我之前在app_code中完成了这项工作,它是使用的web项目的一部分HttpContext.Current.Session.但是,当我尝试在我的类库(甚至是using System.Web)中使用它时,它会抛出一个编译错误,说明在此上下文中不存在HttpContext.我怎样才能访问它?

Jas*_*son 8

在创建一个与HttpContext等依赖项一起使用的实用程序类型类时,最好的办法是通过构造函数或方法调用将上下文或会话传递给类.这样,您的类的消费者明确表示它需要此对象才能运行.这也允许您单独测试您的课程.

更好的是,如果您正在使用具有基本类型的一些特定属性,那么您可以接受这些属性作为输入.这样,您就不会为实用程序库的UI框架创建任何依赖项.