我有一个显示加载栏,发出http请求并完成后隐藏加载栏的组件。 当发生异常时,即使我的代码包装在try finally块中,加载栏也不会隐藏。
try
{
IsLoading = true;
await httpService.InvokeAsync();
}
finally
{
IsLoading = false;
//StateHasChanged();
}
如果我取消注释StateHasChanged()
,它将按预期工作。我知道我的异常未处理(并打印到控制台),但是我试图制作某种全局异常处理程序,并希望避免出现catch块。
这是预期的行为吗? 在没有异常的情况下,由于finally块中的StateHasChanged调用会导致性能问题吗?