viewstate , session , cookie三者之间不同之处

2020-07-08 20:34 评论 0 条

viewstate , session , cookie三者之间不同之处

viewstate

viewstate的值保存在浏览器的html代码中 , 当浏览器关闭 ,则值消失, 即viewstate是在本页面之内各函数间进行传值的, 至于为什么要使用这种方法 , 因为在一个事件发生之后 , 页面可能会刷新 , 如果定义全局变量会被清零 , 所以要使用 viewstate.

session

Session采用键值对 , 也就是说ID存放客户端 , 而值放在服务器端 , 是通过用户的ID去找服务器上对应的值 , 这种方式值放置在服务器端 ,有个时间限制 ,时间到则服务器自动释放.

cookie

Cookies则有两种方法 , 一种方法是把值保存在浏览器的变量中 , 当浏览器关闭时结束 , 另一种方法是保存在硬盘中 , 只要时间不过期 , 下次还可使用.

viewstate 的用法

这是GridView1的ItemTemplate里的么?

还是在哪里的?你是改变了ViewState,但是你让上面那个控件重新计算表达式的值了吗?

既然没有重新计算表达式的值,那又怎么会显示出来呢?。

//--补充

实际上,对让GridView1内部的控件重新计算表达式的最好方法就是重新绑定数据,但是我看了你的代码,好像你在里面存储有用户选择的值是么,所以你有几种方法,一种就是像你获取用户选择的项那样,每一行去找出那个Label,然后设置它的Visible属性,另一种方法就是处理你的数据源,让用户选择影响到数据源,然后重新绑定,就可以了。

asp.net 中的viewstate用法?

通常在页面先定义

protected void Page_Load(object sender, EventArgs e)

{

if(!IsPostBack)

{

ViewState["自定义名称用于区分不用的"] =null; // 定义的开始.

}

}

其他地方,如果要存 .

直接赋值..

ViewState["1"] = "我的值"; // string

要取 .

if(ViewState["1"].ToString() !="")

{

string valuess= ViewState["1"].ToString();

int inn = Convert.toInt32(ViewState["1"]);//

.....

}

asp.net viewstate 储存多项纪录

在viewstate["record"]中存一个List就可以了

初始化(比如在page_load里)

Viewstate["record"]=new List();

button1_click事件里:

List lstRecord=(List)Viewstate["record"];

lstRecord.Add("1");

button2_click事件里:

List lstRecord=(List)Viewstate["record"];

lstRecord.Add("2");

最终Viewstate["record"]里存储了一个 List,值记录了你的按钮点击次序

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:viewstate , session , cookie三者之间不同之处 | 九九博客
分类:SEO优化技术 标签:

发表评论


表情