我想在C#4.0中使用async / await,直到知道,我已经使用了异步CTP v3,但似乎这是一个糟糕的选择,如果我使用VS2012则更多。
在VS2012中,至少有两个选项,Microsoft.CompilerServices.AsyncTargetingPack和Microsoft.Bcl.Async。
第一个版本,Microsoft.Bcl.Async(Bcl),已经发布晚于AsyncTargetingPack(ATP),但Bcl是测试版。
然而,ATP适用于目标为银光5或.NET 4.0的项目,而Bcl似乎可与银光4,银光5,Windows Phone 7.5和.NET 4.0兼容。
ATP已被弃用?兼容或者它们是不同的实现,如果我使用一个,我总是必须使用相同的吗?
哪个是最佳选择?
答案 0 :(得分:7)
AsyncTargetingPack has been renamed to Microsoft.Bcl.Async;后者仅仅是前者的更新版本,而不是新的单独实现。在这种情况下,我只是使用最新版本,即使它是预发布版本,以避免以后必须更新到新的NuGet包名称时出现问题。