3

我正在搜索 NuGet 以找到允许您在 .net 4.0 项目中使用 async/await 的库。我最初正在寻找.NET Framework 4、Silverlight 4 和 5 以及 Windows Phone 7.5 和 8的 Async,但是我找到了 Visual Studio 11 的 Async Targeting Pack

这两个包有什么区别,我什么时候应该使用哪个?

适用于 .NET Framework 4、Silverlight 4 和 5 以及 Windows Phone 7.5 和 8 的异步

此包使面向 .NET Framework 4(带有 KB2468871)、Silverlight 4 和 5 以及 Windows Phone 7.5(包括任何可移植库组合)的 Visual Studio 2012 项目能够使用新的“async”和“await”关键字。这个包还包括基于任务的扩展方法,允许使用一些现有的异步 API 和新的语言关键字。Windows Phone 8 项目可以使用这个包来访问网络类型的异步扩展方法。

Visual Studio 2010 不支持此包,只有在使用使用此包的库时,面向 .NET Framework 4.5 或 .NET for Windows Store 应用程序的项目才需要此包。有关已知问题,请参阅:http: //blogs.msdn.com/b/bclteam/p/asynctargetingpackkb.aspx


适用于 Visual Studio 11 的异步目标包

“Visual Studio 11 的异步目标包”使面向 .NET Framework 4.0 或 Silverlight 5 的项目能够使用 C# 和 Visual Basic 中的异步语言功能。

此包需要 Visual Studio 11,不适用于 Visual Studio 2010。

该包包含在 C# 5.0 和 Visual Basic 11 中使用“async”和“await”关键字所需的 API 支持,以及一组基于任务的适配器 API,这些 API 允许将一些现有的异步 API 与新语言一起使用关键词。

面向 Metro 风格应用程序的 .NET Framework 4.5 或 .NET 项目不需要此目标包。只有面向 Silverlight 5 和 .NET Framework 4.0 的项目才需要它。不支持较早的平台版本。

4

1 回答 1

2

Microsoft.Bcl.Async取代Microsoft.CompilerServices.AsyncTargetingPack。目标包保留在 NuGet 中,因此已经使用它的人仍然可以为他们的项目重新下载它。

有关详细信息,请参阅此 MSDN 文章

于 2013-06-26T21:15:11.930 回答