c#类库中使用Session

简介: 网站开发中,为了保存用户的信息,有时候需要使用session。如果我们在aspx页面中使用Session,只需要Session["key"]=value就可以,获取时使用int userid=Session["userid"],但是在赋值时,我们可能需要判断Session是否为空,是否能转换成int类型。

网站开发中,为了保存用户的信息,有时候需要使用session。如果我们在aspx页面中使用Session,只需要Session["key"]=value就可以,获取时使用int userid=Session["userid"],但是在赋值时,我们可能需要判断Session是否为空,是否能转换成int类型。如果只在一处使用Session,那么我们可以直接在aspx页面中操作,修改也只需修改一处。

但在操作Session时,可能会在多个页面,如果修改Session,可能需要修改多个页面,这样会非常的繁琐。解决的办法主要有两个,一个是基类页面,添加一个基类页面,页面继承自System.Web.UI.Page,在基类页面中处理Session。其它的涉及Session操作的继承自基类页面。二是使用类,如果在asp.net项目中使用类,只需要引用

using System.Web;

using System.Web.SessionState;

然后定义

private static HttpSessionState _session = HttpContext.Current.Session;

就可以通过_session操作Session了。

本文主要介绍第二种方式,而且是使用类库操作Session的方法。

1.新建一个类库

2.添加引用,解决方案资源管理器中,右键“引用”-》“添加引用”-》.net-》选择“System.Web”-》点击“确定”

3.添加一个类,在类中引用

using System.Web;

using System.Web.SessionState;

4.操作Session,主要涉及添加,获取,清除。其它的如修改、删除也可添加。主要代码如下:

private static HttpSessionState _session = HttpContext.Current.Session;
public static void SetSession(string key,object value)
{
    _session[key] = value;
}
public static int GetSessionNumber(string key)
{
    int result = 0;
    if(_session[key]!=null)
    {
        int.TryParse(_session[key].ToString(), out result);
    }
    return result;
}
public static string GetSessionString(string key)
{
    string result = "";
    if(_session[key]!=null)
    {
        result = _session[key].ToString();
    }
    return result;
}
public static void Clear()
{
    _session.Clear();
}

目录
相关文章
|
20天前
|
缓存 Java 数据库连接
《使用 Hibernate 进行 ORM 映射:简化 Java Web 开发的数据库操作》
【4月更文挑战第4天】Hibernate是Java Web开发中的ORM工具,通过将数据库表映射为Java对象简化数据库操作。它减少对SQL和底层数据库的依赖,自动化连接管理,提供缓存机制提升性能。Hibernate的优势包括直观的对象关系映射、透明持久化、灵活查询和关联关系管理。遵循合理设计映射、缓存使用、配置优化及性能测试的最佳实践,可提升开发效率和系统性能。
|
21天前
|
存储 安全 Java
理解Session和Cookie:Java Web开发中的用户状态管理
【4月更文挑战第3天】本文探讨了Web应用中用户状态管理的两种主要机制——Session和Cookie。Session在服务器端存储数据,更安全,适合大量数据,而Cookie存储在客户端,可能影响性能但支持持久化。在Java Web开发中,使用Servlet API操作Session和Cookie,注意敏感信息安全、Session管理及Cookie安全设置。理解两者差异并恰当使用是优化应用性能和用户体验的关键。
|
2月前
|
存储 搜索推荐 安全
Java Web开发中的会话管理:Cookie与Session对比
Java Web开发中的会话管理:Cookie与Session对比
|
8月前
|
Java API
JAVA Session会话 Thymeleaf - 视图模板技术配置步骤
JAVA Session会话 Thymeleaf - 视图模板技术配置步骤
185 0
|
10月前
|
存储 搜索推荐 Java
【Java Web编程 九】深入理解会话追踪技术Session和Cookie(上)
【Java Web编程 九】深入理解会话追踪技术Session和Cookie(上)
50 0
|
10月前
|
存储 NoSQL 算法
【Java Web编程 九】深入理解会话追踪技术Session和Cookie(下)
【Java Web编程 九】深入理解会话追踪技术Session和Cookie
113 0
|
存储 资源调度 Java
Java Web——Servlet的数据共享方案:HttpSession接口(会话作用域对象)
Java Web——Servlet的数据共享方案:HttpSession接口(会话作用域对象)
Java Web——Servlet的数据共享方案:HttpSession接口(会话作用域对象)
|
存储 设计模式 安全
深入分析Java Web -- cookie和session
深入分析Java Web -- cookie和session
202 0
|
存储 安全 JavaScript
Java Web(三) 会话机制,Cookie和Session详解
很大一部分应该知道什么是会话机制,也能说的出几句,我也大概了解一点,但是学了之后几天不用,立马忘的一干二净,原因可能是没能好好理解这两种会话机制,所以会一直遗忘,一直重新回过头来学习它,今天好好把他总结一下,借鉴该文章中的内容,因为我觉得该篇文章确实写的很不错,解答了我很多疑问,特点是对cookie和session的理解,其中的会员卡的例子,真是一针见血的奇效。我按照自己的思路来重新整理一份,给自己以后看。
334 0
Session帮助类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; namespace Test { /// /// Session 操作...
992 0