我知道加上EnableViewState="false" EnableViewStateMac="false" 可以减少viewstate, 但是想完全去掉怎么办?
我看有些人的aspx页面的确没有这个啊<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTgzNzg2MDEzNmQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFKWN0bDAwJENvbnRlbnRQbGFjZUhvbGRlcjEkc2VhcmNoMSRTZWFyY2hC" /> 

解决方案 »

  1.   

    将页面的 EnableViewState设置为false,还是存在视图状态的
    ASP.NET页面需要使用视图状态存储少量数据来保存页面的控件结构是无法移除的
    如果生成太多的垃圾代码,可以对viewstate进行压缩
    HtmlTextWrite来清除viewstate
    ajax获取
    直接用模板替换或者通过Response.Write的方式
    就不会有ViewState代码  
     
      

  2.   

    你果页面没有textbox、gridview等服务器控件,把<form runat=server>去掉,就没有viewstat了
      

  3.   

    不用 webform 就没有这个了
      

  4.   

    如果一些前台页面显示没有一些控件的话,除repeater等
    把form="runat"标签去掉就不会显示了
      

  5.   

    要完全去掉viewstate,需要作两步:
    一:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" EnableViewState="true" %>
    二:<form id="form1" runat="server" enableviewstate="false">
    副作用:控件的部分功能无法正常使用,服务器无法判断是否回发(PostBack)。
      

  6.   

    哦,以上第一条写错了,应该是:
    一:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" EnableViewState="false" %>
      

  7.   

    通常来说,如果是asp.net mvc 是不太会甚至出现ViewState如果lz想把<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTgzNzg2MDEzNmQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFKWN0bDAwJENvbnRlbnRQbGFjZUhvbGRlcjEkc2VhcmNoMSRTZWFyY2hC" />去掉你可动手在你的aspx文件中把 form 的属性 runat="server" 去掉就没有了,不过这时里面是不能有web server控件的,切记
      

  8.   

    和我现在一样,我连cs后置文件都删掉了,只有aspx文件
      

  9.   

    去掉ViewState 樓主將會發現一夜回到石器時代
      

  10.   

    不用服务器控件,form不用服务器标签,那就没有啦
      

  11.   

    那还不如直接用HTML页面开发,不是更好。