Condividi tramite


HiddenFieldPageStatePersister Classe

Definizione

Archivia ASP.NET stato di visualizzazione pagina nel client Web in un elemento HTML nascosto.

public ref class HiddenFieldPageStatePersister : System::Web::UI::PageStatePersister
public class HiddenFieldPageStatePersister : System.Web.UI.PageStatePersister
type HiddenFieldPageStatePersister = class
    inherit PageStatePersister
Public Class HiddenFieldPageStatePersister
Inherits PageStatePersister
Ereditarietà
HiddenFieldPageStatePersister

Esempio

Nell'esempio di codice seguente viene illustrato come associare un ListBox controllo ai dati in un database con un SqlDataSource controllo .

<%@ 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>
<%@ Page language="VB" %>

<!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>

Quando viene visualizzata la pagina di esempio, qualsiasi stato di visualizzazione viene archiviato dalla HiddenFieldPageStatePersister classe in un <hidden> elemento HTML denominato "__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>

Commenti

ASP.NET pagine possono archiviare Page lo stato tra la richiesta HTTP intrinsecamente senza stato e la risposta necessaria per elaborare e gestire qualsiasi pagina Web. Questo stato è denominato "stato di visualizzazione". Il meccanismo predefinito usato per archiviare lo stato di visualizzazione per una pagina e i relativi controlli si trovano in uno o più <hidden> campi HTML inclusi nella pagina servita a un client da un server Web. La Page classe può usare la HiddenFieldPageStatePersister classe per eseguire questa operazione. HiddenFieldPageStatePersister implementa i Save metodi e Load della PageStatePersister classe in modo che Page possa archiviare lo stato in un <hidden> elemento HTML denominato "__VIEWSTATE" in un client Web. Quando il client richiede la stessa pagina dal server Web (postback), l'elemento <hidden> viene analizzato e convertito in informazioni sullo stato da ASP.NET.

Se l'istanza Page richiesta ha una classe associata PageAdapter , recupera l'oggetto PageStatePersister da questa scheda utilizzando il GetStatePersister metodo . Gli adapter possono eseguire l'override del GetStatePersister metodo per restituire un PageStatePersister oggetto che archivia lo stato della pagina e del controllo in qualche modo supportato da un client specifico. Ad esempio, la SessionPageStatePersister classe archivia lo stato della pagina e dei controlli nel server Web, anziché nel client, per ridurre la quantità di informazioni che devono essere inviate e archiviate in un client con memoria e larghezza di banda potenzialmente limitate.

Le dimensioni massime dell'elemento HTML "_VIEWSTATE" <hidden> possono essere impostate tramite la MaxPageStateFieldLength proprietà o tramite l'impostazione di MaxPageStateFieldLength configurazione. Quando questo valore viene impostato e la lunghezza dell'elemento "_VIEWSTATE" supera la lunghezza massima, il contenuto viene diviso in più elementi "_VIEWSTATE".

Costruttori

Nome Descrizione
HiddenFieldPageStatePersister(Page)

Inizializza una nuova istanza della classe HiddenFieldPageStatePersister.

Proprietà

Nome Descrizione
ControlState

Ottiene o imposta un oggetto che rappresenta i dati contenuti nell'oggetto corrente Page da utilizzare per rendere persistenti le richieste HTTP al server Web.

(Ereditato da PageStatePersister)
Page

Ottiene o imposta l'oggetto Page per cui viene creato il meccanismo di persistenza dello stato di visualizzazione.

(Ereditato da PageStatePersister)
StateFormatter

Ottiene un IStateFormatter oggetto utilizzato per serializzare e deserializzare le informazioni sullo stato contenute nelle ViewState proprietà e durante le chiamate ai Save() metodi e ControlStateLoad() .

(Ereditato da PageStatePersister)
ViewState

Ottiene o imposta un oggetto che rappresenta i dati contenuti nell'oggetto corrente Page da utilizzare per rendere persistenti le richieste HTTP al server Web.

(Ereditato da PageStatePersister)

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
Load()

Deserializza e carica informazioni sullo stato persistenti da un HttpRequest oggetto quando un Page oggetto inizializza la gerarchia dei controlli.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
Save()

Serializza qualsiasi stato dell'oggetto ViewState contenuto nella proprietà o ControlState e scrive lo stato nel flusso di risposta.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche