ViewStateException ViewStateException ViewStateException ViewStateException Class

Определение

Представляет исключение, которое вызывается при невозможности загрузки или проверки состояния представления.Represents the exception that is thrown when the view state cannot be loaded or validated. Этот класс не наследуется.This class cannot be inherited.

public ref class ViewStateException sealed : Exception
[System.Serializable]
public sealed class ViewStateException : Exception
type ViewStateException = class
    inherit Exception
    interface ISerializable
Public NotInheritable Class ViewStateException
Inherits Exception
Наследование
ViewStateExceptionViewStateExceptionViewStateExceptionViewStateException
Атрибуты
Реализации

Примеры

В следующем примере кода показано, как реализовать метод, который десериализует строку в кодировке base64 и возвращает ICollection набор свойств.The following code example demonstrates how to implement a method that deserializes a base64-encoded string and returns an ICollection collection of property settings. Deserialize Метод может выдавать HttpException исключение, которое содержит ViewStateException объект как внутреннее исключение.The Deserialize method can throw an HttpException exception that contains a ViewStateException object as an inner exception. В примере показано, как можно перехватить HttpException исключения и извлечения свойств из ViewStateException объекта.The example shows how you can catch an HttpException exception and retrieve the properties from the ViewStateException object.

private ICollection LoadControlProperties(string serializedProperties)
{

    ICollection controlProperties = null;

    // Create an ObjectStateFormatter to deserialize the properties.
    ObjectStateFormatter formatter = new ObjectStateFormatter();

    try
    {
        // Call the Deserialize method.
        controlProperties = (ArrayList)formatter.Deserialize(serializedProperties);
    }
    catch (HttpException e)
    {
        ViewStateException vse = (ViewStateException)e.InnerException;
        String logMessage;

        logMessage = "ViewStateException. Path: " + vse.Path + Environment.NewLine;
        logMessage += "PersistedState: " + vse.PersistedState + Environment.NewLine;
        logMessage += "Referer: " + vse.Referer + Environment.NewLine;
        logMessage += "UserAgent: " + vse.UserAgent + Environment.NewLine;

        LogEvent(logMessage);

        if (vse.IsConnected)
        {
            HttpContext.Current.Response.Redirect("ErrorPage.aspx");
        }
        else
        {
            throw e;
        }
    }
    return controlProperties;
}
Private Function LoadControlProperties(ByVal serializedProperties As String) As ICollection

    Dim controlProperties As ICollection = Nothing

    ' Create an ObjectStateFormatter to deserialize the properties.
    Dim formatter As New ObjectStateFormatter()

    Try
        ' Call the Deserialize method.
        controlProperties = CType(formatter.Deserialize(serializedProperties), ArrayList)
    Catch e As HttpException
        Dim vse As ViewStateException
        Dim logMessage As String

        vse = e.InnerException

        logMessage = "ViewStateException. Path: " + vse.Path + Environment.NewLine
        logMessage += "PersistedState: " + vse.PersistedState + Environment.NewLine
        logMessage += "Referer: " + vse.Referer + Environment.NewLine
        logMessage += "UserAgent: " + vse.UserAgent + Environment.NewLine

        LogEvent(logMessage)

        If (vse.IsConnected) Then
            HttpContext.Current.Response.Redirect("ErrorPage.aspx")
        Else
            Throw e
        End If
    End Try
    Return controlProperties
End Function 'LoadControlProperties   

Комментарии

Если возникает исключение при загрузке сведений состояния просмотра страницы, страница создает ViewStateException и передает его в качестве внутреннего исключения в HttpException исключение.If an exception occurs when the page loads the view-state information, the page creates a ViewStateException object and passes it as an inner exception within an HttpException exception. HttpException Исключение выдается заново для обработки приложением.The HttpException exception is re-thrown to be handled by the application.

ViewStateException Класс хранит сведения об исключении в Message свойство.The ViewStateException class stores information about the exception in the Message property. Если в запросе есть разрешение на доступ к ServerVariables свойства, а затем Message свойство содержит значения, возвращаемые из RemoteAddress, RemotePort, UserAgent, PersistedState, Referer, и Path Свойства; в противном случае Message свойство содержит сообщение об ошибке общего состояния представления.If the request has permission to access the ServerVariables property, then the Message property contains the values returned from the RemoteAddress, RemotePort, UserAgent, PersistedState, Referer, and Path properties; otherwise, the Message property contains a generic view-state error message.

Исключение состояния представления может быть результатом ошибки проверки кодов проверки подлинности сообщения (MAC).A view-state exception can be the result of a Message Authentication Codes (MAC) validation error. Если атрибут страницы enableViewStateMac присваивается true, сведений о состоянии просмотра кодируется с идентификатором MAC.If the page attribute enableViewStateMac is set to true, view-state information is encoded with a MAC identifier. Когда сведения о состоянии представления передается на сервер, страница проверяет кодировка, убедитесь, что он не был изменен пользователем.When the view-state information is posted back to the server, the page verifies the encoding to ensure that it has not been altered by the user. Если страницы не удается проверить кодировку MAC на сведения о состоянии представления, возникнет исключение HttpException исключения с ViewStateException объект как внутреннее исключение.If the page cannot validate the MAC encoding on the view-state information, it will throw an HttpException exception with the ViewStateException object as an inner exception.

Для успешного завершения проверки MAC сведения о состоянии представления должно быть хэширован тот же ключ при отправки и получения.For MAC validation to succeed, the view-state information must be hashed by the same key when it is sent and received. В веб-ферме ключ компьютера на каждом сервере должно быть присвоено значение общего ключа.Within a Web farm, the machine key on each server should be set to a common key.

Конструкторы

ViewStateException() ViewStateException() ViewStateException() ViewStateException()

Инициализирует новый экземпляр класса ViewStateException.Initializes a new instance of the ViewStateException class.

Свойства

Data Data Data Data

Возвращает коллекцию пар "ключ-значение", предоставляющих дополнительную заданную пользователем информацию об исключении.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Inherited from Exception)
HelpLink HelpLink HelpLink HelpLink

Возвращает или задает ссылку на файл справки, связанный с этим исключением.Gets or sets a link to the help file associated with this exception.

(Inherited from Exception)
HResult HResult HResult HResult

Возвращает или задает HRESULT — кодированное числовое значение, присвоенное определенному исключению.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Inherited from Exception)
InnerException InnerException InnerException InnerException

Возвращает экземпляр объекта Exception, который вызвал текущее исключение.Gets the Exception instance that caused the current exception.

(Inherited from Exception)
IsConnected IsConnected IsConnected IsConnected

Возвращает значение, указывающее подключен ли клиент к серверу в данный момент.Gets a value indicating whether the client is currently connected to the server.

Message Message Message Message

Возвращает отладочную информацию о HTTP-запросе, вызвавшем исключение состояния представления.Gets debugging information about the HTTP request that resulted in a view-state exception.

Path Path Path Path

Возвращает путь HTTP-запроса, вызвавшего исключение состояния представления.Gets the path of the HTTP request that resulted in a view-state exception.

PersistedState PersistedState PersistedState PersistedState

Возвращает содержимое строки состояния представления, чтение которой вызвало исключение состояния представления.Gets the contents of the view-state string that, when read, caused the view-state exception.

Referer Referer Referer Referer

Возвращает URL-адрес страницы, связанной со страницей, в которой произошло исключение состояния представления.Gets the URL of the page that linked to the page where the view-state exception occurred.

RemoteAddress RemoteAddress RemoteAddress RemoteAddress

Возвращает IP-адрес HTTP-запроса, вызвавшего исключение состояния представления.Gets the IP address of the HTTP request that resulted in a view-state exception.

RemotePort RemotePort RemotePort RemotePort

Возвращает номер порта HTTP-запроса, вызвавшего исключение состояния представления.Gets the port number of the HTTP request that resulted in a view-state exception.

Source Source Source Source

Возвращает или задает имя приложения или объекта, вызывавшего ошибку.Gets or sets the name of the application or the object that causes the error.

(Inherited from Exception)
StackTrace StackTrace StackTrace StackTrace

Получает строковое представление непосредственных кадров в стеке вызова.Gets a string representation of the immediate frames on the call stack.

(Inherited from Exception)
TargetSite TargetSite TargetSite TargetSite

Возвращает метод, создавший текущее исключение.Gets the method that throws the current exception.

(Inherited from Exception)
UserAgent UserAgent UserAgent UserAgent

Возвращает тип браузера HTTP-запроса, вызвавшего исключение состояния представления.Gets the browser type of the HTTP request that resulted in a view-state exception.

Методы

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException() GetBaseException() GetBaseException() GetBaseException()

При переопределении в производном классе возвращает исключение Exception, которое является корневой причиной одного или нескольких последующих исключений.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Inherited from Exception)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Инициализирует новый экземпляр класса ViewStateException с сериализованными данными.Initializes a new instance of the ViewStateException class with serialized data.

GetType() GetType() GetType() GetType()

Возвращает тип текущего экземпляра в среде выполнения.Gets the runtime type of the current instance.

(Inherited from Exception)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Создает и возвращает строковое представление текущего исключения.Creates and returns a string representation of the current exception.

(Inherited from Exception)

События

SerializeObjectState SerializeObjectState SerializeObjectState SerializeObjectState

Возникает, когда исключение сериализовано для создания объекта состояния исключения, содержащего сериализованные данные об исключении.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Inherited from Exception)

Применяется к

Дополнительно