ViewStateException.Path Özellik

Tanım

Görünüm durumu özel durumuyla sonuçlanan HTTP isteğinin yolunu alır.

public:
 property System::String ^ Path { System::String ^ get(); };
public string Path { get; }
member this.Path : string
Public ReadOnly Property Path As String

Özellik Değeri

String

String İstekten gelen yolu içeren.

Örnekler

Aşağıdaki kod örneği, base64 ile kodlanmış bir dizeyi seri durumdan çıkaran ve özellik ayarları koleksiyonunu döndüren bir ICollection yöntemin nasıl uygulandığını gösterir. yöntemi, Deserialize bir HttpException nesneyi iç özel durum olarak içeren bir ViewStateException özel durum oluşturabilir. Örnek, bir HttpException özel durumu nasıl yakalayabileceğinizi ve nesneden özellikleri nasıl alabileceğinizi ViewStateException gösterir.

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

Açıklamalar

Bu özellik, özelliğindeki değişkenle PATH_INFO ServerVariables aynı değeri döndürür. Yolun ana bilgisayar adından sonraki bölümünü döndürür. Örneğin, URL'de http://www.contoso.com/virdir/page.htmlPath /virdir/page.html döndürür.

Şunlara uygulanır