我遇到一个Blazor
组件的问题,该组件调用Async
注入服务,而注入服务又调用了另一个Async方法。如果我将inner
异步注释掉,一切正常吗?
我尝试删除内部异步调用,并且可以正常工作。我已尝试Task.CompletedTask
并延迟监视。我发现所有异步方法均按设计工作,并且数据返回到组件,但是Blazor应用在呈现时会冻结。
组件代码:
protected override async Task OnInitializedAsync()
{
try
{
cntrols = await parser.getFormElementsAsync();
}
catch(Exception e)
{
var x = e.Message;
}
}
来自服务:
public async Task<List<FHIRParser>> getFormElementsAsync()
{
var tmp = await getItemsAsync();
我没有任何例外,只是挂起