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

奋力向前
Lepaskan: 2021-08-27 11:11:54
ke hadapan
2889 orang telah melayarinya

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 <system.web> dan dayakan 404 konfigurasi

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

2 controllersError (ini terpulang kepada anda), takrifkan action

public ActionResult Index()
{
    Response.Status = "404 Not Found";
    Response.StatusCode = 404;
    return View();
}
Salin selepas log masuk
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");
    }
}
Salin selepas log masuk

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!

Label berkaitan:
sumber:chuchur.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan