什么是Microsoft.Bcl.Async?

什么是Microsoft.Bcl.Async以及它用于什么?

我在包页面上看到:

此程序包使Visual Studio 2012项目能够使用新的“异步”和“等待”关键字。

但是可以看到我的VS2012支持异步等待没有任何额外的包。

那么我应该为我的C#4.5’异步’项目安装软件包吗?

它是一个能够在.NET 4.0项目中使用asyncawait的包。

但请注意。 我遇到了这些库无法在.NET 4.5项目中使用的问题。 但这是在.NET 4.5的初始发布之前。 因此可能会解决此问题。

Microsoft.Bcl.Async提供C#5.0编译器需要使用asyncawait的运行时类型。

它为.NET 4.0,Silverlight 4和5,Windows Phone Silverlight 7.1 / 7.5 以及包含任何这些平台的可移植库带来了async / await支持。 它还在Windows Phone Silverlight 8.0平台上提供了一些扩展方法,因此有时会在那里使用它,即使WP8可以await没有它的情况下支持async / await

它不包括正确的async / await支持所需的ASP.NET运行时更改,因此如果将其安装到ASP.NET 4.0项目中,代码将编译但无法正常工作。 在ASP.NET上使用async / await的唯一受支持的方法是升级到4.5。