/// 单例模式实际业务理解:以登陆者LoginUserInfo为列,进入系统的时候就要获取到该登陆用户的所有信息
/// 如所在的公司,所在的部门,所在的地区,名字,ID,性别,级别,等等,一般登陆人的这些属性都是固定死的,一旦进入系统
/// 读取后,对该系统的其他操作若用到了上述属性,可以直接利用静态类直接调用.当然前提是在登陆者类中要有相应的对上述属性的
/// 设置
public class LogInUserInfo
{
private DataTable userInfoList;//获取用户信息表变量
public DataTable UserInfoList
{
get { return userInfoList; }
}
/// <summary>
/// 只在系统登陆时使用,登陆后就不要使用了.
/// </summary>
/// <param name="refUserInfoDataSet"></param>
public static void InitLogInUserInfoStance(DataSet refUserInfoDataSet)
{
logInUserInfostance = LogInUserInfo.GetInstance();//初始化用户对象
logInUserInfostance.SetLogInUserInfo(refUserInfoDataSet);//调用方法给相关属性赋值
}
/// <summary>
/// 登陆用户信息类
/// </summary>
public void SetLogInUserInfo(DataSet refUserInfoDataSet)
{
if (refUserInfoDataSet.Tables.Contains("UserInfoList"))
{
userInfoList = refUserInfoDataSet.Tables["UserInfoList"];
}
//......
//......省略其它获取用户信息属性的设值
}
///单例模式可以有很多种实现方式,此处最简单,但也会有隐患
public static LogInUserInfo GetInstance()
{
if (logInUserInfostance == null)
{
logInUserInfostance = new LogInUserInfo();
}
return logInUserInfostance;
}
}