Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document IExceptionHandler #29674

Merged
merged 6 commits into from
Jun 30, 2023
Merged

Document IExceptionHandler #29674

merged 6 commits into from
Jun 30, 2023

Conversation

tdykstra
Copy link
Contributor

@tdykstra tdykstra commented Jun 29, 2023

Fixes #29520

Best location for the new H2 section seems to be after the sections on Developer exception page and Exception handler page, and before the UseStatusCodePages section.

Internal review URL (goes to .NET 8 version and the new section)


Internal previews

📄 File 🔗 Preview link
aspnetcore/fundamentals/error-handling.md Handle errors in ASP.NET Core

@tdykstra tdykstra requested a review from JamesNK June 29, 2023 23:28
@tdykstra tdykstra marked this pull request as ready for review June 29, 2023 23:29
@tdykstra
Copy link
Contributor Author

@Kahbazi please review.

@tdykstra tdykstra merged commit 53e763d into dotnet:main Jun 30, 2023
2 checks passed
@tdykstra tdykstra deleted the iexceptionhandler2 branch June 30, 2023 22:15

[IExceptionHandler](https://source.dot.net/#Microsoft.AspNetCore.Diagnostics/ExceptionHandler/IExceptionHandler.cs,adae2915ad0c6dc5) is an interface that gives the developer a callback for handling known exceptions in a central location.

`IExceptionHandler` implementations are registered by calling [`IServiceCollection.AddExceptionHandler<T>`](https://source.dot.net/#Microsoft.AspNetCore.Diagnostics/ExceptionHandler/ExceptionHandlerServiceCollectionExtensions.cs,e74aac24e3e2cbc9). Multiple implementations can be added, and they're called in the order registered. If an exception handler handles a request, it can return `true` to stop processing. If an exception isn't handled by any exception handler, then control falls back to the default behavior and options from the middleware. Different metrics and logs are emitted for handled versus unhandled exceptions.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be useful to mention that IExceptionHandlers lifetime is singleton.

Donciavas pushed a commit to Donciavas/AspNetCore.Docs that referenced this pull request Feb 7, 2024
Co-authored-by: Günther Foidl <gue@korporal.at>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document IExceptionHandler
4 participants