Tôi có tùy chỉnh các trang lỗi cài đặt sử dụngMVC InvalidOperationException với các trang lỗi tùy chỉnh
<customErrors mode="On" defaultRedirect="~/Home/Error">
<error statusCode="404" redirect="~/Home/PageNotFound" />
</customErrors>
Tôi tạo ra một trang mà ném và ngoại lệ và tôi được chuyển đến các trang báo lỗi chính xác.
Tuy nhiên tôi nhận thấy những sai sót trong ELMAH trên máy chủ web sản xuất:
System.InvalidOperationException Quan điểm 'Lỗi' hoặc thạc sĩ của nó được không tìm thấy hoặc không có công cụ xem hỗ trợ các địa điểm khám xét. Các địa điểm được tìm kiếm: ~/Khu vực/Bóng đá/Lượt xem/Dự thảo/Lỗi.aspx ~/Khu vực/Bóng đá/Lượt xem/Bản nháp/Lỗi.ascx ~/Khu vực/Bóng đá/Lượt xem/Chia sẻ/Lỗi.aspx ~/Khu vực/Bóng đá/Lượt xem/Chia sẻ/Lỗi.ascx ~/Lượt xem/Bản nháp/Lỗi.aspx ~/Lượt xem/Nháp/Lỗi.ascx ~/Lượt xem/Chia sẻ/Lỗi.aspx ~/Lượt xem/Chia sẻ/Lỗi. ascx ~/Khu vực/Bóng đá/Lượt xem/Bản nháp/Lỗi.cshtml ~/Khu vực/Bóng đá/Lượt xem/Bản nháp/Lỗi.vbhtml ~/Khu vực/Bóng đá/Lượt xem/Chia sẻ/Lỗi.cshtml ~/Khu vực/Bóng đá/Lượt xem /Shared/Error.vbhtml ~/Lượt xem/Nháp/Lỗi.cshtml ~/Lượt xem/Nháp/Lỗi.vbhtml ~/Lượt xem/Chia sẻ/Lỗi.cshtml ~/Lượt xem/Chia sẻ/Lỗi.vbhtml
Tại sao tìm trang lỗi ở nơi khác? Tôi đã xóa ~/Views/Shared/Error.cshtml và thêm trang lỗi tùy chỉnh của tôi tại ~/Home/Error vì tôi đã chỉ định một mặc định mới trong tệp cấu hình của mình.
Bất kỳ ý tưởng nào?
Cảm ơn.
Từ 'customErrors' là một cái gì đó giao dịch với ASP.NET (không ASP .NET MVC), nó không phải là công cụ tốt nhất cho công việc. Richard Dingwall có một bài viết tuyệt vời về điều này: http://richarddingwall.name/2008/08/17/strategies-for-resource-based-404-errors-in-aspnet-mvc/ –