TaskAwaiter在使用Visual Studio 2015时未实现INotifyCompletion

本文关键字:2015时 实现 INotifyCompletion Studio Visual TaskAwaiter | 更新日期: 2023-09-27 18:26:28

我有一个旧的ASP.NET Web窗体项目,我也需要添加一个异步库。我已将其升级到.NET Framework 4.5.1版。它与Visual Studio 2013完美地运行和编译。

然而,当我用Visual Studio 2015打开它时,它不会编译。每个异步调用都有一个TaskAwaiter does not implement INotifyCompletion错误。

例如,以下代码:

public async Task AsyncDelay()
{
    await Task.Delay(1);
}

抛出以下错误:

CS4027"TaskAwaiter"未实现"INotifyCompletion"

任何帮助都将不胜感激。

TaskAwaiter在使用Visual Studio 2015时未实现INotifyCompletion

我终于发现了这个问题。此nuget包已安装

https://www.nuget.org/packages/Microsoft.CompilerServices.AsyncTargetingPack/1.0.1

这是为了支持旧版本的Visual Studio。我去掉这个,一切正常。

我在这件事上浪费了太多时间。。。

我今天遇到这个问题,我认为它可能会对某人有所帮助:Microsoft.CompilerServices.AncTargetingPack已弃用,但存在另一个包

https://www.nuget.org/packages/Microsoft.Bcl.Async

我已经从项目中删除了这个,现在一切都很好。