VS 2010允许我在C#中使用新的async和await关键字吗?

时间:2012-04-06 15:21:09

标签: c# .net visual-studio async-await

当新的异步和等待功能上线时,我能在Visual Studio 2010中使用它们,还是需要Visual Studio?

我要问的是:微软是否会维持VS 2010和VS 11之间的语言功能平价? CTP是预览版,是否可靠,我们的客户不希望我们使用被认为是不完整或未经测试的技术 - 所以尽管获得了许可,但我无法使用它。

我的雇主购买VS 11,所以我需要知道我是否在浪费时间编写异步和等待代码。

5 个答案:

答案 0 :(得分:13)

现在,Async CTP允许您在Visual Studio 2010中使用新的awaitsasync语法。语言团队在演示时为当前版本的Visual Studio提供CTP是很常见的。新功能。这是让开发人员进行实验并向语言团队提供反馈的好方法。

然而,对于最终版本,新语言功能通常仅适用于下一版本的Visual Studio(在本例中为Dev11)。它们不会返回到以前版本的Visual Studio。

此版本的CTP在当前版本和下一个版本中发生在LINQ之前。几乎可以肯定用awaits

重复一遍

答案 1 :(得分:10)

只需安装Async CTP,在项目中引用dll即可使用async和await。或者安装VS11并直接与.Net 4.5一起使用。如果你想在生产中随时使用它,我会选择第一个选项。

编辑:对于仍在寻找此事的人。如果此时您仍然有.Net 4.0应用程序并且想要使用.Net 4.5的所有异步功能,那么就会有一个名为Microsoft Async的Nuget包。您只需要至少拥有Visual Studio 2012.使用该软件包时,您不必在已经拥有VS2012时安装Async CTP。 (另外,与VS2012并排安装Async CTP并不能真正起到我的作用)

答案 2 :(得分:1)

您可以在2010年使用它们。我在2010年运行了开发人员预览版,没有任何问题。然而,Resharper无法识别关键字,但他们已经(或将会)在以后的版本中对其进行补救。

答案 3 :(得分:0)

由于改变的范围,它意味着,不太可能作为正式版本重新回到VS2010。

正如其他人评论的那样,你可以使用CTP罚款。如果您的担忧是正式支持的话,那几乎可以肯定是使用VS11(Beta有上线许可证,FWIW)

答案 4 :(得分:0)

据我所知,新功能将成为C#5.0的一部分。 根据过去发布的框架和编程语言,它们可以通过新的工作室版本获得,通常与此一起发布。

但是,过去我们已经能够通过引用包含它们的库来使用更新的C#功能,因此可以通过引用所需的内容来实现这一功能。