Microsoft.CompilerServices.Async Targeting Pack和Microsoft.Bcl.Async有什么区别?

时间:2013-06-26 21:08:37

标签: .net visual-studio-2012 .net-4.0 nuget async-await

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

这两个包之间的区别是什么?我应该在什么时候使用哪个?

  

Async for .NET Framework 4,Silverlight 4和5以及Windows Phone 7.5和8

     

此软件包支持面向.NET的Visual Studio 2012项目   框架4(使用KB2468871),Silverlight 4和5以及Windows Phone   7.5(包括任何可移植的库组合)使用新的'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。

     

该软件包包含使用'async'所需的API支持   '等待'C#5.0和Visual Basic 11中的关键字,以及一组   基于任务的适配器API,允许使用一些现有的   具有新语言关键字的异步API。

     

针对.NET风格应用的.NET Framework 4.5或.NET项目不需要此定位包。只有针对Silverlight 5和.NET Framework 4.0的项目才需要它。不支持早期的平台版本。

1 个答案:

答案 0 :(得分:2)

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

有关详细信息,请参阅this MSDN article

相关问题