Bagikan melalui


ViewStateException.Path Properti

Definisi

Mendapatkan jalur permintaan HTTP yang menghasilkan pengecualian status tampilan.

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

Nilai Properti

Yang String berisi jalur dari permintaan.

Contoh

Contoh kode berikut menunjukkan cara menerapkan metode yang mendeserialisasi string yang dikodekan base64 dan mengembalikan ICollection kumpulan pengaturan properti. Metode ini Deserialize dapat melemparkan HttpException pengecualian yang berisi ViewStateException objek sebagai pengecualian dalam. Contoh menunjukkan bagaimana Anda dapat menangkap HttpException pengecualian dan mengambil properti dari ViewStateException objek.

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

Keterangan

Properti ini mengembalikan nilai yang sama dengan PATH_INFO variabel dalam ServerVariables properti . Ini mengembalikan bagian jalur setelah nama host. Misalnya, di URL http://www.contoso.com/virdir/page.html, Path akan mengembalikan /virdir/page.html.

Berlaku untuk