ASP.net在页面中定义的变量 不同人访问页面改变变量会项目影响么

比如stringUserCode;protectedvoidPage_Load(objectsender,EventArgse){UserCode=Session["Us... 比如
string UserCode;
protected void Page_Load(object sender, EventArgs e)
{
UserCode = Session["UserCode"].ToString();
}
protected void Btn_Submit_Click(object sender, EventArgs e)
{
弹窗UserCode;
}

用户A登录了点按钮是弹出的是A
用户B登录了点按钮是弹出的是B

但是如果A登录了 还没有点按钮这个时候B登录了 那么A点按钮弹出的是A还是B 为啥?
展开
 我来答
最丑写手
2019-08-03
知道答主
回答量:27
采纳率:0%
帮助的人:13.2万
展开全部
先给你个答案:不会出现相互影响的情况。
页面内定义的局部变量只在本次加载页面的时候有效,如果有其它事件用到了这个变量,没有重新赋值的,使用初始值,事件中有重新赋值的,重新加载页面后也就变回初始值了。而每个人在打开页面的时候都是一次重新加载(等于是New了一个新实例,新实例的局部变量值自然和之前其它实例的不一样。)。
使用static修饰的除外,一处赋值,所有人打开页面都是一个值,直到重新赋值或者重启。
可以写几行简单的代码测试一下。
百度网友60a5940
推荐于2016-03-16 · TA获得超过218个赞
知道小有建树答主
回答量:282
采纳率:100%
帮助的人:173万
展开全部
  Session又称为会话状态,是Web系统中最常用的状态,用于维护和当前浏览器实例相关的一些信息。举个例子来说,我们可以把已登录用户的用户名放在Session中,这样就能通过判断Session中的某个Key来判断用户是否登录,如果登录的话用户名又是多少。
我们知道,Session对于每一个客户端(或者说浏览器实例)是“人手一份”,用户首次与Web服务器建立连接的时候,服务器会给用户分发一个SessionID作为标识。SessionID是一个由24个字符组成的随机字符串。用户每次提交页面,浏览器都会把这个SessionID包含在HTTP头中提交给Web服务器,这样Web服务器就能区分当前请求页面的是哪一个客户端,所以就会不同用户登陆session值也不一样
追问
我问的是我定义的变量弹出的字符串是否会被第二个人用户冲掉  谢谢
追答
我的天。。。。 
首先你弹出的usercode使用session记录的,而Session不用用户同时登陆记录的不一样对吧。Session是跟客户端发一个SessionID标示的,网站项目里边用户A在所在地登陆会给a的客户端发送一个sessionID,B在b所在地登陆会给B发送一个,因此不同用户登陆路session不会出现名称错误,或者登陆的是别的名字的。
然后再说你这个,你把取出Session值得操作放在了页面Load下边,因此当运行的时候UserCode就已经记录了当前用户是a或者是B,所以点击弹窗只是一个现实效果,a登陆就是弹出a
b登陆就是弹出b。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式