Global Navigation Errors
Errors happen when navigating. Using the PrismApplication in Prism.Forms.Extended allows you to automatically and globally handle these errors.
Default Behavior¶
- Writes to the Console that there was a Navigation Error
- Resolves the ILogger, and Reports the Error with the following additional properties
- Serializes the NavigationParameters to a JSON string
- Adds the Navigation Uri
Overriding the Default Behavior¶
If the output on the NavigationError isn't quite what you're hoping for you will need to override the OnNavigationError
in PrismApplication
. As an example below we will maintain the same logging behavior but ensure that while debugging we always hit a breakpoint so we can explore the values of the Navigation Error anytime this is encountered.
protected override void OnNavigationError(INavigationError navigationError)
{
#if DEBUG
// Ensure we always break here while debugging!
System.Diagnostics.Debugger.Break();
#endif
base.OnNavigationError(navigationError);
}