C# 服务器端Blazor,can';无法更新屏幕

C# 服务器端Blazor,can';无法更新屏幕,c#,blazor-server-side,C#,Blazor Server Side,在标准WeatherForecastService中,我添加了一个延迟来模拟缓慢的数据加载: public Task<WeatherForecast[]> GetForecastAsync(DateTime startDate) { var rng = new Random(); Task.Delay(5000).Wait(); return Task.FromResult(Enumerable.Range(1, 5).Select(ind

在标准WeatherForecastService中,我添加了一个延迟来模拟缓慢的数据加载:

  public Task<WeatherForecast[]> GetForecastAsync(DateTime startDate)
  {
      var rng = new Random();
      Task.Delay(5000).Wait();
      return Task.FromResult(Enumerable.Range(1, 5).Select(index => new WeatherForecast
      {
          Date = startDate.AddDays(index), TemperatureC = rng.Next(-20, 55),
          Summary = Summaries[rng.Next(Summaries.Length)]
      }).ToArray());
  }
而不是:

this.StateHasChanged();

但这似乎没有什么区别。有人知道如何在加载数据时显示此微调器吗?

好吧,您已经调用了方法
GetForecastSync
,但尚未将其声明为
异步任务。我很惊讶,当您尝试
等待ForecastService.getForecastSync(DateTime.Now)时,没有收到Intellisense警告消息或错误完全正确。另外,我建议使用
wait Task.Delay(5000)

谢谢!好像我暂时失明了。每个程序员每周至少说10次!:D
InvokeAsync(() => StateHasChanged());
this.StateHasChanged();