Rumah >hujung hadapan web >Tutorial H5 >Analisis mendalam halaman 404 tersuai mvc4 dalam asp.net (kongsi)

Analisis mendalam halaman 404 tersuai mvc4 dalam asp.net (kongsi)

奋力向前
奋力向前ke hadapan
2021-08-27 11:11:542973semak imbas

Dalam artikel sebelumnya "Artikel yang menerangkan penggunaan Proksi proksi ES6 dalam JS (perkongsian kod) ", kami mengetahui tentang penggunaan Proksi proksi ES6 dalam JS. Artikel berikut akan membantu anda memahami halaman mvc4 custom 404 di asp.net Ia mempunyai nilai rujukan tertentu.

Analisis mendalam halaman 404 tersuai mvc4 dalam asp.net (kongsi)

Sudah tentu terdapat banyak cara untuk mentakrifkan 404. Kaedah yang berbeza memberikan bentuk yang berbeza, dan pengalaman pengguna juga berbeza. Berikut menyediakan dua

kaedah satu

1 Cari bahagian web.config dalam 2dc15ec6bc814c3aa45b55d017848bed dan dayakan 404 konfigurasi

<customErrors defaultRedirect="~/Error" mode="On" redirectMode="ResponseRedirect">
<error redirect="/Error" statusCode="404" />
</customErrors>

2 controllersError (ini terpulang kepada anda), takrifkan action

public ActionResult Index()
{
    Response.Status = "404 Not Found";
    Response.StatusCode = 404;
    return View();
}
dalam

seperti berikut Kaedah ini secara lalai untuk menambahkan url pada ?aspxerrorpath=/ anda, contohnya: http://localhost/Error??aspxerrorpath=/123456, jadi. ia tidak disyorkan. Cuba

Kaedah 2:

Buka fail Global.asax untuk menentukan alamat pengalihan ralat (controller/action)

protected void Application_Error(object sender, EventArgs e)
{
    Exception ex = Server.GetLastError();
    if (ex is HttpException && ((HttpException)ex).GetHttpCode() == 404)
    {
        Response.Redirect("/Error");
    }
}

Nota: Semasa pembangunan, kami sering Menggunakan kaedah Global.asax dalam kaedah Application_Error melompat ke halaman ralat tersuai, tetapi kadangkala (terutamanya apabila tapak digunakan untuk IIS) menggunakan kaedah Response.Redirect dalam kaedah Application_Error akan gagal . Apabila ralat tidak normal berlaku, halaman kuning ralat lalai masih dipaparkan. Response.Redirect

Sebab asasnya ialah walaupun kita menggunakan kaedah

dalam kaedah Application_Error, apabila ralat pengecualian berlaku dalam sistem, Response.Redirect berpendapat bahawa pengecualian tidak telah dikendalikan, jadi ia tidak Ia akan melompat ke halaman yang ditunjuk oleh Asp.Net dalam kaedah Application_Error, dan akhirnya ia akan melompat ke halaman kuning ralat lalai. Response.Redirect

Penyelesaian masalah ini sangat mudah Sebelum menggunakan

dalam kaedah Application_Error untuk membuat lompatan, panggil kaedah Response.Redirect dahulu untuk memberitahu sistem bahawa. ralat pengecualian telah dikendalikan , sistem akan melompat ke halaman ralat tersuai jika anda memanggil kaedah Server.ClearError() sekali lagi. Response.Redirect

Pembelajaran yang disyorkan:

tutorial video asp.net

Atas ialah kandungan terperinci Analisis mendalam halaman 404 tersuai mvc4 dalam asp.net (kongsi). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:chuchur.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam