PageStatePersister.ViewState Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает объект, представляющий данные, которые элементы управления, содержащиеся в текущем объекте Page, используют для сохранения в HTTP-запросах к веб-серверу.
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
Значение свойства
Объект, содержащий данные состояния представления.
Примеры
В следующем примере кода показано, как класс, производный от класса , PageStatePersister инициализирует ViewState свойство . В этом примере ViewState свойство было назначено полю FirstPair объекта и сериализовано с помощью ObjectStateFormatter объекта , который является экземпляром IStateFormatter интерфейса . При вызове Load метода интерфейс используется для десериализации ObjectStateFormatter сведений о состоянии представления, а свойство инициализируется ViewState из поля результирующего Pair объекта First . Этот пример входит в состав более крупного примера использования класса PageStatePersister.
//
// 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
Комментарии
Состояние представления — это словарь данных о состоянии, которые должны функционировать и отрисовываться элементами управления веб-сервера. Разработчики управления обычно обращаются к объекту состояния представления с помощью ViewState свойства . Состояние представления влияет, когда состояние представления отключено на Page уровне, и в результате элементы управления могут работать неправильно в этих сценариях. Дополнительные сведения об использовании ViewState и состоянии элемента управления при разработке элементов управления см. в разделе Разработка пользовательских элементов управления ASP.NET Server.