Aracılığıyla paylaş


PageStatePersister.ViewState Özellik

Tanım

Geçerli Page nesnenin içerdiği verileri temsil eden bir nesneyi alır veya ayarlar, Web sunucusuna yönelik HTTP isteklerinde kalıcı hale getirmek için kullanır.

public:
 property System::Object ^ ViewState { System::Object ^ get(); void set(System::Object ^ value); };
public object ViewState { get; set; }
member this.ViewState : obj with get, set
Public Property ViewState As Object

Özellik Değeri

Görünüm durumu verilerini içeren bir nesne.

Örnekler

Aşağıdaki kod örneği, sınıfından türetilen bir sınıfın PageStatePersister özelliğini nasıl başlatdığını ViewState gösterir. Bu örnekte, ViewState özelliği bir Pair nesnenin First alanına atanmış ve arabiriminin bir örneği IStateFormatter olan nesnesi kullanılarak ObjectStateFormatter seri hale getirilmiştir. Load yöntemi çağrıldığında, ObjectStateFormatter görünüm durumu bilgilerini seri durumdan kaldırmak için arabirimi kullanılır ve ViewState özellik sonuçta elde Pair edilen nesnenin First alanından başlatılır. Bu kod örneği, sınıfı için PageStatePersister sağlanan daha büyük bir örneğin parçasıdır.

//
// Load ViewState and ControlState.
//
public override void Load()
{
    Stream stateStream = GetSecureStream();

    // Read the state string, using the StateFormatter.
    StreamReader reader = new StreamReader(stateStream);

    IStateFormatter formatter = this.StateFormatter;
    string fileContents = reader.ReadToEnd();

    // Deserilize returns the Pair object that is serialized in
    // the Save method.
    Pair statePair = (Pair)formatter.Deserialize(fileContents);

    ViewState = statePair.First;
    ControlState = statePair.Second;
    reader.Close();
    stateStream.Close();
}
'
' Load ViewState and ControlState.
'
Public Overrides Sub Load()

    Dim stateStream As Stream
    stateStream = GetSecureStream()

    ' Read the state string, using the StateFormatter.
    Dim reader As New StreamReader(stateStream)

    Dim serializedStatePair As String
    serializedStatePair = reader.ReadToEnd
    Dim statePair As Pair

    Dim formatter As IStateFormatter
    formatter = Me.StateFormatter

    ' Deserilize returns the Pair object that is serialized in
    ' the Save method.      
    statePair = CType(formatter.Deserialize(serializedStatePair), Pair)

    ViewState = statePair.First
    ControlState = statePair.Second
    reader.Close()
    stateStream.Close()
End Sub

Açıklamalar

Görünüm durumu, Web sunucusu denetimlerinin çalışması ve kendilerini işlemesi için ihtiyaç duyduğu durum verilerinin bir sözlüğüdür. Denetim geliştiricileri genellikle özelliğini kullanarak görünüm durumu nesnesine erişer ViewState . Görünüm durumu düzeyinde devre dışı Page bırakıldığında görünüm durumu etkilenir ve sonuç olarak denetimler bu senaryolarda düzgün davranmayabilir. Denetim geliştirirken durumu kullanma ViewState ve denetleme hakkında daha fazla bilgi için bkz. Özel ASP.NET Sunucu Denetimleri Geliştirme.

Şunlara uygulanır