惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
G
Google Developers Blog
H
Help Net Security
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Proofpoint News Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog RSS Feed
爱范儿
爱范儿
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
大猫的无限游戏
大猫的无限游戏
人人都是产品经理
人人都是产品经理
GbyAI
GbyAI
D
Docker
Hugging Face - Blog
Hugging Face - Blog
I
InfoQ
博客园 - 司徒正美
Last Week in AI
Last Week in AI
Microsoft Security Blog
Microsoft Security Blog
美团技术团队
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence

博客园 - yiyanxiyin

一个linq左连接查询速度问题 利用vba实现excel表格连接打印编号(一页两个编号),编号支持前缀 使用反射让linq实现动态查询, 类似拼接sql语句的where 条件 中断工作流并持久化到数据库中【源码】 按模板生成word报表,可扩展,demo可生成多页 在非asp.net程序中使用缓存 固定table的行列 固定table的cell宽度,多余的文字隐藏 - yiyanxiyin - 博客园 wcf中异步与双向通讯的区别 解决msmq私有队列不能持久保存的问题 sqlserver中使用查询分析器的一点小技巧 原创:一个相当有用的宏(for vs.net),该宏能大大的提高开发速度 Response.Redirect()与Server.Transfer()的区别 cellIndex在隐藏td中的问题,bug?(ie6) - yiyanxiyin - 博客园 一个format格式问题 - yiyanxiyin - 博客园 参透js 搞不懂的js 个人作品:全文搜索Access中的数据(附.net源代码) 个人作品:存储过程代码生成器(for MS SQL Server)
原创技术文章:保存帐号信息通用类(使用Session或者Cookie)
yiyanxiyin · 2006-05-18 · via 博客园 - yiyanxiyin

/* class CurrentUser
 * 
 * 经典类(通用): 保存登陆信息
 *  
 * 创建日期:2005-09-29 
 * 修改日期:2006-05-16
 * 创建者  :yx
 * 
 * 说明: 可以设置使用Session还是Cookie保存帐号信息
 */

using System;
using System.Web;
using System.ComponentModel;
using System.Data;

namespace SysClassLibrary.User
{
/// <summary>
/// 存取当前登录用户的信息以及对当前用户的相关操作
/// created by yanxin 2005-9-29
/// </summary>
public class CurrentUser
{
/// <summary>
///更改以确定使用Cookie还是Session
///说明:Cookie不安全,但不易丢失;Session安全,但易丢失,请酌情选择。开发过程中往往使用Cookie,它不会应为编译而丢失。
/// </summary>
private static IUserInfo SaveType = new CookieUserInfo();

/// <summary>
/// 不允许显示构造实例,这里全部为静态成员,因为到处都要用。
/// </summary>
static  CurrentUser()
{
}

/// <summary>
/// 帐号  [注意:静态属性和静态变量是不一样的,静态变量为所有用户共享,而这里不是,这里是每个用户独立,因为它读写的Session或Cookie。静态属性和静态方法功能一样。]
/// </summary>
public static string UserID
{
get
{
return SaveType.UserID;
}
set
{
SaveType.UserID = value;
}
}

/// <summary>
/// 用户名称
/// </summary>
public static string UserName
{
get
{
return SaveType.UserName;
}
set
{
SaveType.UserName = value;
}
}

/// <summary>
/// 所属机构(部门)ID
/// </summary>
public static string OrganID
{
get
{
return SaveType.OrganID;
}
set
{
SaveType.OrganID = value;
}
}

/// <summary>
/// 用户角色ID
/// </summary>
public static string RoleID
{
get
{
return SaveType.RoleID;
}
set
{
SaveType.RoleID = value;
}
}

/// <summary>
/// 所属机构(部门)Code 
/// 只读属性
/// </summary>
public static string OrganCode
{
get
{
string sql = "select strCode ID from tab_Organ where id='" + OrganID + "'";

return SysClassLibrary.DataAccess.ExecuteScalar(sql).ToString();
}
}

/// <summary>
/// 登陆成功后调用
/// 移植到其他项目可酌情更改
/// </summary>
/// <param name="userID"></param>
public static void SetUserInfo(string userID)
{
string sql = "select * from Sys_Users where UserID='" + userID  + "'";

DataTable dt = SysClassLibrary.DataAccess.dataTable(sql);

UserID = userID;//用户帐号
UserName = dt.Rows[0]["UserName"].ToString() ; //用户姓名
OrganID = dt.Rows[0]["Organ_ID"].ToString();   //机构ID
RoleID = dt.Rows[0]["Role_ID"].ToString();  //用户角色
}
/// <summary>
/// 更新当前用户在线时间
/// 移植到其他项目可酌情更改
/// </summary>
public static void UpdateLatestOnline()
{
string sql = "update sys_Users set OnlineLatest='{0}' where Online=1 and UserID='{1}'";
sql = string.Format(sql, DateTime.Now.ToString(), UserID);

SysClassLibrary.DataAccess.ExecuteSql(sql);
}
}
}