HiddenFieldPageStatePersister Sınıf

Tanım

Web istemcisinde ASP.NET sayfa görünümü durumunu gizli bir HTML öğesinde depolar.

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
Devralma
HiddenFieldPageStatePersister

Örnekler

Aşağıdaki kod örneği, bir denetimin bir ListBox denetimle SqlDataSource veritabanındaki verilere nasıl bağlanacağını gösterir.

<%@ 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>

Örnek sayfa görüntülendiğinde, herhangi bir görünüm durumu sınıf tarafından HiddenFieldPageStatePersister "__VIEWSTATE" adlı bir <hidden> HTML öğesinde depolanır.

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

Açıklamalar

ASP.NET sayfalar, herhangi bir Web sayfasını işlemek ve sunmak için gereken durum bilgisi olmayan HTTP isteği ve yanıtı arasında durum depolayabilir Page . Bu durum "görünüm durumu" olarak adlandırılır. Bir sayfanın görünüm durumunu ve denetimlerini depolamak için kullanılan varsayılan mekanizma, web sunucusundan bir istemciye sunulan sayfada bulunan bir veya daha fazla <hidden> HTML alanında yer alır. sınıfı Page , bu işi yapmak için sınıfını HiddenFieldPageStatePersister kullanabilir. HiddenFieldPageStatePersister Save, bir Web istemcisinde PageStatePersister "__VIEWSTATE" adlı bir <hidden> HTML öğesinde durum depolayabilmesi Page için sınıfının ve Load yöntemlerini uygular. İstemci Web sunucusundan aynı sayfayı istediğinde (geri gönderme), <hidden> öğe ayrıştırılır ve ASP.NET tarafından durum bilgilerine dönüştürülür.

Page İstenen örneğin ilişkili PageAdapter bir sınıfı varsa, yöntemini kullanarak GetStatePersister bu bağdaştırıcıdan nesnesini alırPageStatePersister. Bağdaştırıcılar, belirli bir istemcinin GetStatePersister desteklediği şekilde sayfa ve denetim durumunu depolayan bir PageStatePersister nesne döndürmek için yöntemini geçersiz kılabilir. Örneğin sınıf, SessionPageStatePersister bellek ve bant genişliği sınırlı olabilecek bir istemciye gönderilmesi ve depolanması gereken bilgi miktarını azaltmak için sayfayı ve denetimlerin durumunu istemci yerine Web sunucusunda depolar.

"_VIEWSTATE" <hidden> HTML öğesinin en büyük boyutu özelliği veya MaxPageStateFieldLength yapılandırma ayarı aracılığıyla MaxPageStateFieldLength ayarlanabilir. Bu değer ayarlandığında ve "_VIEWSTATE" öğesinin uzunluğu maksimum uzunluğu aştığında, içerik birden çok "_VIEWSTATE" öğesine bölünür.

Oluşturucular

Name Description
HiddenFieldPageStatePersister(Page)

HiddenFieldPageStatePersister sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
ControlState

Http isteklerinde Web sunucusuna kalıcı olmak için geçerli Page nesne tarafından kullanılan denetimleri temsil eden bir nesne alır veya ayarlar.

(Devralındığı yer: PageStatePersister)
Page

Görünüm durumu kalıcılık mekanizmasının oluşturulduğu nesneyi alır veya ayarlar Page .

(Devralındığı yer: PageStatePersister)
StateFormatter

ve yöntemlerine yapılan çağrılar sırasında ve ControlState özelliklerinde yer alan durum bilgilerini serileştirmek ve seri durumdan ViewState çıkarmak için Save()Load() kullanılan bir IStateFormatter nesnesi alır.

(Devralındığı yer: PageStatePersister)
ViewState

Http isteklerinde Web sunucusuna kalıcı olmak için geçerli Page nesne tarafından kullanılan denetimleri temsil eden bir nesne alır veya ayarlar.

(Devralındığı yer: PageStatePersister)

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
Load()

Bir nesne denetim hiyerarşisini başlatırken Page nesneden HttpRequest kalıcı durum bilgilerini seri durumdan kaldırır ve yükler.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
Save()

veya ControlState özelliğinde ViewState bulunan tüm nesne durumlarını serileştirir ve durumu yanıt akışına yazar.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.