【问题标题】:How to assign async task method to a multicastdelegate parameter [duplicate]如何将异步任务方法分配给多播委托参数[重复]
【发布时间】:2022-01-06 23:19:06
【问题描述】:

我需要将async Task 方法分配给一个multicastdelegate 参数,如下所示。

protected async Task GridRowSelect(Employee emp)
{
    await Service.SetRowSelect(emp.Id);
}

gridSettings.RowSelect = new EventCallback<Employee>(this, (Action<Employee>)GridRowSelect);

但它给出了一个错误。

'Task GridRowSelect(Employee) 的返回类型错误'

如果我将async Task 更改为async void,这是可行的。但这是正确的方法吗?

【问题讨论】:

    标签: c# .net async-await delegates task


    【解决方案1】:

    是的,async void 是正确的方法。 async voidintended specifically 用于使异步事件处理程序成为可能。这就是它存在的全部原因。所以用它来处理RowSelect事件是可以的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-27
      • 2023-04-10
      • 2022-01-25
      • 2017-12-27
      相关资源
      最近更新 更多