代码之家  ›  专栏  ›  技术社区  ›  Etienne

无法在中隐藏VIEWSTATE隐藏字段ASP.NET

  •  3
  • Etienne  · 技术社区  · 15 年前

    我就这样设法把它移走了。。。。。。。。。。。。。

    <%@ Page enableEventValidation="false" EnableViewState="false" %>
    

    但是VIEWSTATE仍然存在,我无法摆脱它,我需要。(难以解释原因)

    有没有别的办法摆脱它?

    提前谢谢!

    5 回复  |  直到 10 年前
        1
  •  4
  •   SecretDeveloper    14 年前

    您需要覆盖页面上的以下方法:

    protected override void SavePageStateToPersistenceMedium(
    object viewState)
    {
    }
    
    protected override object LoadPageStateFromPersistenceMedium()
    {
        return null;
    }
    

    请看这里: http://weblogs.asp.net/ngur/archive/2004/03/08/85876.aspx

    如果没有viewstate,您将无法使用asp.net控制。您可能需要重新考虑您正在尝试做什么,以及为什么需要去掉viewstate部分。

        2
  •  3
  •   Mehrdad Afshari    15 年前

    移除 __VIEWSTATE 总的来说,你需要摆脱 <form runat="server"> 标签。当然,您将无法使用需要在服务器窗体中呈现的控件。

        3
  •  0
  •   stepanian    15 年前

    或者你可以用ASP.NETMVC公司。它不使用\u VIEWSTATE。

        4
  •  0
  •   Richard Szalay    15 年前

    __VIEWSTATE 两者兼得 视图状态 主要区别在于,控件可以在多个回发上正常工作,而无需 视图状态 控制状态 .

    <form runat="server"> (使之成为HTML表单)或使用ASP.NETMVC公司。两者都不涉及使用服务器端表单,而是ASP.NET创建MVC的目的是不使用任何服务器端控件。

    ASP.NET State Management Overview

        5
  •  0
  •   Community CDub    8 年前

    请看 this answer . 但是,如果您不想要viewstate,到目前为止最好的摆脱它的方法是使用MVC。