最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
asp.net中的session赋值与获取session值代码
时间:2011-05-04 编辑:简简单单 来源:一聚教程网
asp教程.net中的session的定义和取消有时是分散的,工作组中的每个人定义session的时候不一样,并且名称有随意性,所以做了一个session的统一管理,便于session的规范化。
//interface for session
public interface isession {
string tostring();
}
2. session 类
// managerinfo 是model中的一个类,直接继承
// 将对象放入session中时,该对象必须是可序列化的
[serializable]
public class loginsession : managerinfo , isession
{
public loginsession(): base()
{
sessionid = "";
}public string sessionid { get; set; }
public override int gethashcode()
{
return sessionid.gethashcode();
}public override string tostring()
{
if (!string.isnullorempty(sessionid))
return sessionid;
else
return "";
}
}
session赋值
loginsession currentmanager = new loginsession();
currentmanager.username="admin";
currentmanager.permission="all";
currentmanager.sessionid = httpcontext.current.session.sessionid;
httpcontext.current.session[apps教程etting.globalsessionname] = currentmanager;
httpcontext.current.session.timeout = 200;
取得session的值
public static t getglobalsessionvalue
(string _propertyname)
{
return getsessionvalue(common.const.appsetting.globalsessionname, _propertyname);
}public static t getsessionvalue
(string _sessionname , string _propertyname)
{
t retval = default(t);
string propertyname = _propertyname.tolower();if (convert.tostring(httpcontext.current.session[_sessionname]) != "")
{
object sessionobject = (object)httpcontext.current.session[_sessionname];if (sessionobject is isession)
{
propertyinfo[] propertyinfos = sessionobject.gettype().getproperties();foreach (var pi in propertyinfos)
{
string refname = pi.name.tolower();
if (propertyname == refname)
{
retval = (t)pi.getvalue(sessionobject, null);
break;
}
}
}
}return retval;
}
在程序中可以这样取得session中某一项的值
string _tmpstr = utilities.getglobalsessionvalue("username");
int _tmpint = utilities.getglobalsessionvalue("pagesize");
model.manager = utilities.getglobalsessionvalue("managerdetail");
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10