Có OK để bắt ngoại lệ của tôi trong các hành động của bộ điều khiển không? Có cách nào tốt hơn để làm điều đó không? Tôi đang thực sự bắt ngoại lệ của tôi trong bộ điều khiển và sử dụng TempData để hiển thị một thông báo cho người dùng, nhưng tôi có một cảm giác kỳ lạ về cách tiếp cận này. Tôi đã được duyệt xung quanh nhưng tôi đã không tìm thấy bất cứ điều gì phù hợp với tôi.Xử lý ngoại lệ ASP.NET MVC
Trả lời
Bạn có thể sử dụng thuộc tính HandleError
trên lớp bộ điều khiển để bắt bất kỳ ngoại lệ chưa được xử lý nào và nó sẽ tự động trả về chế độ xem Error.aspx trong thư mục Được chia sẻ. Có quá tải cho thuộc tính này, do đó bạn chỉ có thể có nó được sử dụng với nhiều loại ngoại lệ nhất định, vv
Để biết thêm thông tin về phương pháp này, hãy kiểm tra bài ScottGu về nó: http://weblogs.asp.net/scottgu/archive/2008/07/14/asp-net-mvc-preview-4-release-part-1.aspx
Điều này thật thú vị, nhưng cách khác tôi có thể chuyển hướng đến các khung nhìn tiêu chuẩn (ví dụ "Index") và hiển thị một thông điệp được cá nhân hóa cho ngoại lệ cụ thể ... –
Các trang Error.aspx được gắn với lớp HandleErrorInfo, cho thấy các thuộc tính của ngoại lệ. Nếu bạn đang gửi Thông báo ngoại lệ được cá nhân hóa, bạn có thể hiển thị thông báo đó cho chế độ xem. Sách của Steve Sanderson "Pro ASP.NET MVC Framework" bao gồm một số cách để làm điều này, và cũng làm thế nào để tạo ra các bộ lọc ngoại lệ của riêng bạn. Tôi khuyên bạn nên chọn cuốn sách đó. – mkchandler
Có thể mở rộng HandleError để cho phép xác định TempData? Tôi nghĩ rằng tôi sẽ điều tra về điều này. Cảm ơn ... –
- 1. Xử lý ngoại lệ ASP.NET MVC Web API
- 2. Xử lý ngoại lệ trong Bộ điều khiển (ASP.NET MVC)
- 3. ngoại lệ Xử lý trong global.asax ASP.NET MVC
- 4. Xử lý ngoại lệ ASP.NET/Đăng nhập
- 5. Xử lý lỗi trong ASP.NET MVC
- 6. Xử lý ngoại lệ MVC mùa xuân với HandlerExceptionResolver
- 7. Xử lý ngoại lệ ASP.Net Ajax phía máy chủ
- 8. Làm cách nào để xử lý các ngoại lệ chung trong Asp.Net MVC?
- 9. Xử lý ngoại lệ trong ASP.NET MVC và Ajax - Bộ lọc [HandleException]
- 10. Ghi nhật ký ngoại lệ ASP.Net MVC kết hợp với xử lý lỗi
- 11. Xử lý ngoại lệ MVVM
- 12. Parallel.Invoke - ngoại lệ xử lý
- 13. Xử lý ngoại lệ WCF
- 14. BackgroundWorker xử lý ngoại lệ
- 15. Xử lý ngoại lệ NHibernate
- 16. Xử lý ngoại lệ AOP
- 17. Xử lý ngoại lệ C++
- 18. ofstream xử lý ngoại lệ
- 19. Xử lý ngoại lệ CursorLoader
- 20. Xử lý ngoại lệ PostgreSQL
- 21. xử lý ngoại lệ python
- 22. Mẫu xử lý ngoại lệ
- 23. c + + xử lý ngoại lệ
- 24. Xử lý ngoại lệ TPL
- 25. Xử lý ngoại lệ JSF2
- 26. Xử lý nhiều ngoại lệ
- 27. Xử lý ngoại lệ Python
- 28. Refactor Xử lý ngoại lệ
- 29. Ngoại lệ xử lý Antlr
- 30. Xử lý ngoại lệ nút
Đây là cũ nhưng tôi chỉ muốn cung cấp bài đăng của tôi dưới dạng ref (** các vấn đề với HandleError **) trong khi đi qua - http://stackoverflow.com/questions/12183653/mvc-handleerror-filter-didnt-catch-an-exception –