1.
一般情况下是不是用不上ViewState?应该EnableViewState =false?
这样做是不是会快一些?什么情况是必须用到ViewState呢?2.
比如
  a.根据DataGrid的某一个Column的日期进行过滤,通过两个TEXTBOX设置一个日期段,只显示这个日期段的数据。
  b.根据人名显示,比如DATATABLE是许多人的信息,每个人有好几条信息
  person1  aaa
  person1  bbb
  person1  ccc
  person2  ddd
  person2  eee
  person3  fff我有个页面要全显示,但是可以切换成只显示person1的怎么做比较好?

解决方案 »

  1.   

    1.当你觉得用session多于,而这个变量只在当前页面需要的时候,需要在事件中共同操作一个值的时候.2.第二个没看清楚意思
      

  2.   

    1的回答没看懂2就是说我页面第一次显示时是显示
      name     something
      person1  aaa
      person1  bbb
      person1  ccc
      person2  ddd
      person2  eee
      person3  fff标签显示ALL 同时有person1 person2 person3的标签
    当我点击person1时 页面变为
      name     something
      person1  aaa
      person1  bbb
      person1  ccc
      

  3.   

    1.bingbingcha(不思不归,不孟不E,原来是头大灰狼)的说法并不完全正确,ViewState和Session各自有其用处, Session变量存在于服务器端,不返回客户端,由此可见Session变量至少有几个优点,首先维护变量的安全性,第二可以为客户请求保留信息.ViewState则是将变量进行序列化,然后连同网页一起发到客户端(看看使用了ViewState的网页上的那串难懂字符串你就明白了),当客户端将请求发回时,该信息被服务器反序列化还原成变量,这种做法看上去好象很浪费资源,其实减轻了服务器的负担,在大型的Asp.net系统中为每一个用户分配那么点Session到人多了可是一个不可忽略的问题.但是ViewState显然会降低每个客户的响应时间(发的东西多了当然会这样),所以大规模的数据你应该禁用viewstate,对比较简单的数据你应该使用它.
      

  4.   

    2.这个问题很简单,你绑定表格的时候不要用DataTable,用DataView, DataView对象有个filter属性,你在该属性中设置过滤条件,然后将DataView绑定到你的DataGrid上就可以了 :),如果你不想每次都访问数据库的话,你应该使用Session对你的查询结果进行保存
      

  5.   

    第二个明白了第一个,我好像还是不太知道ViewState到底干吗的
    看你的意思ViewState好像可以像Session Cache一样存你想存的任何东西,是吗?这个怎么用呢我本来问得是,每个<asp: Control都有个属性是EnableViewState 这个是干吗用的,什么时候该Enable什么时候不该
      

  6.   

    http://www.microsoft.com/china/msdn/archives/library/dnaspnet/html/Asp11222001.asphttp://www.66study.com/Article/web/ASP/yingyong/200506/47002.html
      

  7.   

    http://www.cnblogs.com/wayfarer/archive/2004/04/25/7574.aspxhttp://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/mwsdk/html/mwlrfenableviewstatepropertystylesheet.asp
      

  8.   

    我本来问得是,每个<asp: Control都有个属性是EnableViewState 这个是干吗用的,什么时候该Enable什么时候不该
    -------------------
    ViewState是保存状态,简单例如:ViewState为False,刷新后值就没有了。如TextBox
      

  9.   

    要实现第二个功能其实不是难事呀
    可以有很多种方式都可以实现的(就看你用什么控件)因为不同的控件实现方式就不一样可以看一下MSDN
      

  10.   

    EnableViewState 启用ViewState
    能不用ViewState则不用,因为它会降低性能
    ViewState 有点象Session,用来存你下次想取东西
    区别是ViewState 存在于HTML代码中,Session存在于服务器