本文目录
- viewstate 的用法
- c#面试题 什么是viewstate,能否禁用是否所用控件都可以禁用
- ViewState,这段代码是什么意思
- application,session,cokie,viewstate的区别是什么
- ViewState是什么
- viewstate是什么
- ViewState有什么用
- viewstate 是什么意思
- c#中viewstate用法
- viewstate删掉有什么后果
viewstate 的用法
《asp:Label ID=“Label1“ runat=“server“ Text=’ 《%#“正确答案:“+Eval(“Answer“) %》’ Visible=’ 《%#ViewState[“ShowRightAns“] %》’》 《/asp:Label》
这是GridView1的ItemTemplate里的么?
还是在哪里的?你是改变了ViewState,但是你让上面那个控件重新计算表达式的值了吗?
既然没有重新计算表达式的值,那又怎么会显示出来呢?。
//--补充
实际上,对让GridView1内部的控件重新计算表达式的最好方法就是重新绑定数据,但是我看了你的代码,好像你在里面存储有用户选择的值是么,所以你有几种方法,一种就是像你获取用户选择的项那样,每一行去找出那个Label,然后设置它的Visible属性,另一种方法就是处理你的数据源,让用户选择影响到数据源,然后重新绑定,就可以了。
c#面试题 什么是viewstate,能否禁用是否所用控件都可以禁用
viewstate用于在两次postback之间保持状态的一种机制 禁用viewstate将不能在回发之间保存状态 当控件状态无关使用viewstate将造成性能问题时需要禁用viewstate
ViewState,这段代码是什么意思
某个变量的属性:
其做用是:
set:如果Enableviewstate为真则为viewstate的“name”属性赋值!
Enableviewstate:是否响应客户端事件
viewstate:和session,application一种的作用,但是作用域不一样:session为会话级,application为应用级
viewstate为页面级
application,session,cokie,viewstate的区别是什么
Application用于保存所有用户共用的数据信息,如果被保存的数据在应用程序生存期内根本不会改变或很少改变,用它。但是在asp.net中有个web.config,可能更好点。如果要使用application,一个需要考虑的问题是任何写操作都有要在application_onstart事件中(Global.asax)中完成。尽管使用application.lock和application.unlock方法来避免操作的同步,但是它串行化了对application的请求,当网站访问量大时会造成性能瓶颈。因此最好不要用它存取大的数据集。
使用方法:
//存放信息
Application[“test“] = “100“;
//读取
String test = Application[“test“].ToString();
Session 用于保存每个用户的专用信息,它的生存期是用户持续请求时间再加上一段时间(可以在web.config中设置,默认是20分钟)。Session中的信息保存在服务器的内存中,当然你也可以设置它的保存方法(如存在SQL数据库中)。由于用户停止使用程序后它仍然在内存中保持一段时间,因此使用Session对象保存用户数据的方法效率很低。对于小量的数据。使用Session还是一个不错的选择。
//存
Session[“user“] = “majcms“;
//取
String username = Session[“user“].ToString();
Cookie用于保存客户浏览器请求服务器页面的请求信息,程序员也可以用它保存非敏感性的内容。保存时间可以根据需要设置。如果没有设置Cookie失效时间,它仅保存至浏览器关闭。如果将Cookie设置为Min Value,则表示它永不过期。Cookie存储量受到很大限制,一般浏览器支持最大容量为4096字节。因此不能用来存储大量数据。由于并非所有浏览器都支持Cookie,并且它是以明文方式保存的,所以最好不要保存敏感性的内容。否则会影响网络安全。
//存
Response.Cookies[“name“].Value = “majcms“;
//取
String username = Response.Cookies[“name“].Value;
ViewState常用于保存单个用户的状态信息,有效期等于页面的生存期,注意:是单个页面的生存期,所以它的生存期是比其它三个都小的。ViewState容器可以保存大量的数据,但是必须谨慎使用,因为过多使用会影响性能,最明显的就是网页打开速度慢。所有Web服务器控制都使用ViewState在页面回发期间保存自已的信息状态,如果某个控件不需要在回发期间保存信息,最好将其ViewState属性关闭,(看一下控制的属性面板),避免不必要的资源浪费。通过设置页面的“EnableViewState=false“可以禁用整个页面的ViewState。
//存
ViewState[“index“] = 1;
//取
int indexID = (int)ViewState[“index“];
或
//存
ViewState[“name“] = “majcms“;
//取
String Name = ViewState[“name“].ToString();
ViewState是什么
顾名思意(视图状态),是一个页面级的变量,也就是如果你定义了
ViewState[“username“]=“admin“;
那么你在该页面可以访问这个变量,在别的页面是访问不到的。
viewstate是什么
就在当前页面中保存数据的.
像session.是会话级别的.只要会话没有过期.session中存的数据就在.
viewstate是页面级别的.只要这个页面在.viewstate中存的数据就在.
就是说viewstate中存的数据只能在声明该变量的页面中使用.
比如在某页的page_load中声明了:ViewState[“test“]=“fdasfdsa“;
那么在该页中的任何一个方法中都可以使用ViewState[“test“]来直接得到值“fdsafdsa“.
ViewState有什么用
ASP.NET中的ViewState
ViewState是ASP.NET中用来保存WEB控件回传时状态值一种机制。在WEB窗体(FORM)的设置为runat=“server“,这个窗体(FORM)会被附加一个隐藏的属性_VIEWSTATE。_VIEWSTATE中存放了所有控件在ViewState中的状态值。
ViewState是类Control中的一个域,其他所有控件通过继承Control来获得了ViewState功能。它的类型是system.Web.UI.StateBag,一个名称/值的对象集合。
当请求某个页面时,ASP.NET把所有控件的状态序列化成一个字符串,然后做为窗体的隐藏属性送到客户端。当客户端把页面回传时,ASP.NET分析回传的窗体属性,并赋给控件对应的值。当然这些全部是由ASP.NET负责的,
viewstate 是什么意思
session知道吧?
viewstate和session的用途一样.只是session的生命周期是整个会话.而viewstate的生命周期则是该页面结束之前.
也就是说你可以保存任意一个对象在viewstate中.然后在该页面的任何地方都可以直接从viewstate中拿出存好的值.
如:
page_load中声明:ViewState[“test“]=“abc“;
某按扭中:ViewState[“test“]=ViewState[“test“].ToString()+“def“;
然后在其它地方直接写:string str=ViewState[“test“].ToString();此时可得str的值为“abcdef“.
c#中viewstate用法
ViewState[“A“]=“B“就是将字符串“B“赋值给ViewState[“A“],和Session用法差不多,直接在页面里赋值即可。只在本页有效
viewstate删掉有什么后果
viewstate可以理解成为保存当前页面的一个载体,你在里面存得有东西,删了就肯定有问题。与session类似,只是只能保存在当前页面,具有临时性