实体类数据被缓存,导致各客户端加载到最后一次其他用户操作数据,急,在线等

houndsky 2011-05-19 09:24:21
架构如下:
类:RegUser

public class RegUser
{
public RegUser()
{ }

private int _userId = 0;

public int UserId
{
get { return _userId; }
set { _userId = value; }
}

private string _usermail = "";

public string Usermail
{
get { return _usermail; }
set { _usermail = value; }
}
}


类:GlobalUserClass

public class GlobalUserClass
{
public GlobalUserClass()
{ }

private string _thumbsUserMail;


/// <summary>
/// 根据项目需求定义格式
/// </summary>
public string ThumbsUserMail
{
get
{
if (string.IsNullOrEmpty(_thumbsUserMail))
{
if (PageBase.regUser != null)
{
_thumbsUserMail = PageBase.regUser.Usermail;//根据项目需求定义格式
}
}
return _thumbsUserMail;
}
}
}


基类:PageBase.cs

public class PageBase : System.Web.UI.Page
{
public static RegUser regUser = null;

/// <summary>
/// 判断登录
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
if (Session["UserInfo"] != null && Session["UserInfo"].ToString() != "")
{
regUser = (RegUser)Session["UserInfo"];
}
else
{
Session.Clear();
Response.Redirect("login.aspx");
}
}
}

WEB用户控件:WebUserHead.ascx

if (!IsPostBack)
{
GlobalUserClass userClass = new GlobalUserClass();
string _thumbsUserMail = userClass.ThumbsUserMail;
if (_thumbsUserMail != "")
{
lblThumbsUserMail.Text = _thumbsUserMail;
plShow.Visible = true;
}
}

登录页:login.aspx
主页面:index.aspx

问题描述:
登录页login及主页面index引用web用户控件。主页面index继承基类PageBase判断用户登录状态。
WebUserHead.ascx功能为当用户登录时,显示用户邮箱缩略,未登录时为空。
用户登录时,从数据库获取到的数据对象存入Session["UserInfo"]中,

现在情况为,当用户A成功登录到系统后,webuserhead显示正常。
但用户B进行打开系统进入login页时,webuserhead上还显示用户A的邮箱缩略
如果此时用户C通过login进行系统后,用户B在不登录的状态下,刷新login。此时WebUserHead上显示了用户B的邮箱缩略。

但用户B实际上不能操作任何系统中需要使用SESSION的数据,每一次刷新login页,WebUserHead总显示最后一个成功登录操作系统的用户邮箱缩略。

用户A、B、C在不同机器不同浏览器进行测试

请教一下各位,这种情况如何处理,谢谢!
...全文
111 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
houndsky 2011-05-19
  • 打赏
  • 举报
回复
谢谢楼上,问题已解决
youlove13 2011-05-19
  • 打赏
  • 举报
回复
建议不要用static,因为static,全局共享的都指向内存堆上同一个地址
神风凌 2011-05-19
  • 打赏
  • 举报
回复
我擦,CSDN好烂~登录不了
houndsky 2011-05-19
  • 打赏
  • 举报
回复
自己顶!
本人担任腾讯云大数据、人工智能解决方案架构师、数字化转型专家,原京东集团云计算架构师,拥有17年行业信息化工作经验,主要负责能源行业、政府单位的大数据、人工智能解决方案设计及项目落地,同时也帮助多家央企编制数字化转型方案。在京东就职期间,担任京东云计算架构师,带领私有云团队,共同设计京东云产品,并助力京东云产品在铁道部完成第一单落地。本大擅长大数据、系统分析、云计算、人工智能、数字化转型等领域,期望通过系统化整理自己所学知识和经验,形成录播课件,助力信息化工作人员度过经济萧条期,能力更上一层楼。 结合讲师多年大数据平台数据仓库建模实施经验和知识能力,全面剖析和讲解数据建模能力,让您全面熟悉OLTP、OLAP系统数据库建模概念、特点及实践方法。让您秒变数据建模师。本课程目录设计如下: 课程介绍 第1讲:知识框架介绍 第2讲:什么是模型,为什么需要建模 第3讲:数据建模常用术语 第4讲:数据模型分类 第5讲:实体间的关系 第6讲:OLTP与OLAP区别及关系 第7讲:OLTP与OLAP多维度对比 第8讲:OLTP系统建模特点 第9讲:以经营管理系统为例分析业务需求 第10讲:以经营管理系统为例分析数据建模 第11讲:以日经营彩信模块为例分析数据建模 第12讲:OLAP系统建模特点 第13讲:OLAP系统建模分层设计 第14讲:数据仓库与数据集市的区别 第15讲:OLAP建模数据存储特征识别 第16讲:全量数据与累计数据 第17讲:维度表设计及各层次模型的差异 第18讲:OLTP与OLAP建模总结

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧