'Task'不包含C#的'CompletedTask'定义

时间:2017-07-06 02:05:40

标签: c# task

我正在https://discord.foxbot.me/docs/guides/getting_started/intro.html跟随T恤上的教程,但是当我尝试使用

时我遇到了错误
return Task.CompletedTask

我收到此错误

'Task' does not contain a definition for 'CompletedTask'

using System.Threading.Tasks

3 个答案:

答案 0 :(得分:12)

Task.CompletedTask是.NET 4.6中添加的静态属性。 Here is its source和显示最低框架版本的here is its MSDN page

为了完整起见,以下是更改项目中使用的.NET Framework版本的方法。

Project Properties, Target Framework

答案 1 :(得分:11)

如果您无法升级.NET Framework版本,只需

Task.CompletedTask替换为Task.FromResult(0)

答案 2 :(得分:0)

This文档中,Log()函数有两个参数(LogMessage,Task)。我相信教程有错误,他们忘了包含Task参数。我建议改用它。

private Task Log(LogMessage msg,Task task)
        {
            Console.WriteLine(msg.ToString());
            return Task.CompletedTask;
        }