如何处理 blazor 服务器 razor 组件中未处理的异常,在页面模型中,我正在处理 try catch 块,但一些错误来自 razor 文件和电路中断,应用程序停止。请建议我解决此问题的解决方案。
1 回答
0
我读了很多关于这个问题的文章,我发现现在没有办法为 blazor 进行全局错误处理,你可以像这样处理与 http 请求相关的错误:
if (!response.IsSuccessStatusCode)
{
var statusCode = response.StatusCode;
switch (statusCode)
{
case HttpStatusCode.NotFound: _navigation.NavigateTo("/Notfound", true);
break;
case HttpStatusCode.Unauthorized: _navigation.NavigateTo("/Error");
break;
default: _navigation.NavigateTo("/Error");
break;
}
throw new ApplicationException($"Reason: {response.ReasonPhrase}");
}
您还需要小心在 blazor 组件中使用 try catch 和一些探针 [inject] 因为您的 blazor 电路可能会失败!您可以在microsoft 文档中阅读有关此内容的更多信息,如果我错了,请更正。
于 2021-01-08T14:00:04.730 回答