如何解决此任务/等待代码?我基本上是在调用一个返回Task
并在以后返回Awaiting
的方法。首先,它说的是Awaited task returns no value
(无论如何对我来说)。然后它说它不能将void转换为int。怎么来的?预先感谢。
class Program
{
static async void Main(string[] args)
{
var tsk = First();
int mynumb = await tsk;
return;
}
static async Task<int> First()
{
return 2;
}
}
答案 0 :(得分:7)
变量类型不正确。
将其更改为此:
Task<int> tsk = First();
或仅使用var
关键字
var tsk = First();
要删除警告,您需要使First()
方法返回一个Task<int>
,如下所示:
static Task<int> First()
{
return Task.FromResult(2);
}
从上面的代码来看,似乎所有这些都不需要是异步的,因此,在这种情况下,您可能会在这里浪费时间。