HiddenFieldPageStatePersister Klasa

Definicja

Przechowuje stan widoku strony ASP.NET na kliencie sieci Web w ukrytym elemecie HTML.

public class HiddenFieldPageStatePersister : System.Web.UI.PageStatePersister
Dziedziczenie
HiddenFieldPageStatePersister

Przykłady

W poniższym przykładzie kodu pokazano, jak powiązać kontrolkę ListBox z danymi w bazie danych za pomocą kontrolki SqlDataSource .

<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:SqlDataSource
          id="SqlDataSource1"
          runat="server"
          DataSourceMode="DataReader"
          ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
          SelectCommand="SELECT LastName FROM Employees">
      </asp:SqlDataSource>

      <asp:ListBox
          id="ListBox1"
          runat="server"
          DataTextField="LastName"
          DataSourceID="SqlDataSource1">
      </asp:ListBox>

    </form>
  </body>
</html>

Po wyświetleniu strony przykładowej każdy stan widoku jest przechowywany przez klasę HiddenFieldPageStatePersister w elemecie <hidden> HTML o nazwie "__VIEWSTATE".

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
<HTML>  
  <BODY>  
    <form name="_ctl0" method="post" action="sample.aspx" id="_ctl0">  

      <input type="hidden" name="__VIEWSTATE" value="MgAwADkANgAwADkAOQA3ADgAMQD/AQ8QBQoxMTU2NDc1NjE0EGRkFgICAQ9kFgICAw8PZBAVDQVhc2RhcwhCdWNoYW5hbghDYWxsYWhhbgdEYXZvbGlvCURvZHN3b3J0aAZGdWxsZXIES2luZwhLcmF3YXJpawlMZXZlcmxpbmcETWFyeQdQZWFjb2NrBlN1eWFtYQx0ZXN0IHJlZnJlc2gVDQVhc2RhcwhCdWNoYW5hbghDYWxsYWhhbgdEYXZvbGlvCURvZHN3b3J0aAZGdWxsZXIES2luZwhLcmF3YXJpawlMZXZlcmxpbmcETWFyeQdQZWFjb2NrBlN1eWFtYQx0ZXN0IHJlZnJlc2gUKgMNZ2dnZ2dnZ2dnZ2dnZ2RkZPdhi6U7jBPqVZbj0W8AYFSJ6oiq" />  

      <select size="4" name="ListBox1" id="ListBox1">      
        <option value="Buchanan">Buchanan</option>  
        <option value="Callahan">Callahan</option>  
        <option value="Davolio">Davolio</option>  
        <option value="Dodsworth">Dodsworth</option>  
        <option value="Fuller">Fuller</option>  
        <option value="King">King</option>  
        <option value="Leverling">Leverling</option>  
        <option value="Suyama">Suyama</option>  
      </select>  

    </form>  
  </BODY>  
</HTML>  

Uwagi

ASP.NET strony mogą przechowywać Page stan między bezstanowym żądaniem HTTP i odpowiedzią wymaganą do przetworzenia i obsłużenia dowolnej strony sieci Web. Ten stan nosi nazwę "stan widoku". Domyślny mechanizm służący do przechowywania stanu wyświetlania strony, a jego kontrolki znajdują się w co najmniej jednym <hidden> polu HTML zawartym w stronie obsługiwanej klientowi z serwera sieci Web. Klasa Page może użyć HiddenFieldPageStatePersister klasy , aby wykonać tę pracę. HiddenFieldPageStatePersisterImplementuje Save metody PageStatePersister i Load klasy , aby Page można było przechowywać stan w elemecie <hidden> HTML o nazwie "__VIEWSTATE" na kliencie sieci Web. Gdy klient żąda tej samej strony z serwera sieci Web (ogłaszania zwrotnego), <hidden> element jest analizowany i konwertowany na informacje o stanie przez ASP.NET.

Page Jeśli żądane wystąpienie ma skojarzona PageAdapter klasę, pobiera PageStatePersister obiekt z tej karty przy użyciu GetStatePersister metody . Karty mogą zastąpić metodę GetStatePersisterPageStatePersister , aby zwrócić obiekt, który przechowuje stan strony i kontroli w jakiś sposób, który obsługuje określony klient. Na przykład SessionPageStatePersister klasa przechowuje stan strony i kontrolek na serwerze sieci Web, zamiast klienta, aby zmniejszyć ilość informacji, które muszą być wysyłane i przechowywane na kliencie, który ma potencjalnie ograniczoną pamięć i przepustowość.

Maksymalny rozmiar elementu HTML "_VIEWSTATE" <hidden> można ustawić za pomocą MaxPageStateFieldLength właściwości lub ustawienia MaxPageStateFieldLength konfiguracji. Gdy ta wartość zostanie ustawiona i długość elementu "_VIEWSTATE" przekroczy maksymalną długość, zawartość jest podzielona na wiele elementów "_VIEWSTATE".

Konstruktory

Właściwości

ControlState

Pobiera lub ustawia obiekt, który reprezentuje dane, które steruje bieżącym Page obiektem używanym do utrwalania żądań HTTP na serwerze sieci Web.

(Odziedziczone po PageStatePersister)
Page

Pobiera lub ustawia Page obiekt, dla którego jest tworzony mechanizm trwałości stanu widoku.

(Odziedziczone po PageStatePersister)
StateFormatter

IStateFormatter Pobiera obiekt, który jest używany do serializacji i deserializacji informacji o stanie zawartych w ViewState właściwościach i podczas wywołań metod Save() i ControlStateLoad().

(Odziedziczone po PageStatePersister)
ViewState

Pobiera lub ustawia obiekt, który reprezentuje dane, które steruje bieżącym Page obiektem używanym do utrwalania żądań HTTP na serwerze sieci Web.

(Odziedziczone po PageStatePersister)

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
Load()

Deserializuje i ładuje utrwalone informacje o stanie z HttpRequest obiektu, gdy Page obiekt inicjuje jego hierarchię sterowania.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
Save()

Serializuje dowolny stan obiektu zawarty w ViewState właściwości or ControlState i zapisuje stan do strumienia odpowiedzi.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Produkt Wersje
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

Zobacz też