某一web页面(仅限于此页面,并非整个项目全局共享),后台我想定义一个变量,作为“标志”使用(例如:修改标志),在此页中多处要用到此变量,并且根据变量的值做不同的操作,请问:这一变量要用什么类型的,要求因为是web用户,所以此变量不能被多用户共享,仅限于此页面,此用户。
用public string val;
还是protected string val;
或是其他的方法,望赐教!我尝试过用ViewState["val"]的方法,但是这样有点繁!
注意:
public statics string val,这种方法就不要推荐了,这种变量不行,所有用户都能访问。我的目的是定义一个变量val,a用户在此页面中也可以用,b用户也可以用,但是只能各取各的值,互不影响)
用.net(c#)做web开发的全局变量问题
答案:2 悬赏:10 手机版
解决时间 2021-01-03 09:33
- 提问者网友:凉末
- 2021-01-03 04:31
最佳答案
- 五星知识达人网友:慢性怪人
- 2021-01-07 02:16
看来你是没明白全局变量的意思,也没明白static的意思。asp.net没什么全局变量,全局变量的意思就是程序所有地方都可以访问,大家访问的值也是一样的。用static就可以起到全局变量的作用。
至于你的要求, public,protected都是可以的,要定义在.cs文件里。 之所以两种都行,是因为.aspx最后生成的那个类,实际是.cs里定义的那个类的子类,因此根据继承的原理,父类里,共有的和保护的变量,子类都是可以访问的。
你用viewstate说繁琐,这个东西不是繁琐的问题,要看你应用的场景,public/protected的变量可以用是可以用,但每次重新刷新后,值是不会保存的,要保存,你就要用viewstate或者用别的什么控件保存,这是应用场景的不同,完全看你这个变量要干什么了。
至于你的要求, public,protected都是可以的,要定义在.cs文件里。 之所以两种都行,是因为.aspx最后生成的那个类,实际是.cs里定义的那个类的子类,因此根据继承的原理,父类里,共有的和保护的变量,子类都是可以访问的。
你用viewstate说繁琐,这个东西不是繁琐的问题,要看你应用的场景,public/protected的变量可以用是可以用,但每次重新刷新后,值是不会保存的,要保存,你就要用viewstate或者用别的什么控件保存,这是应用场景的不同,完全看你这个变量要干什么了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯