Visual Studio 2012 中支持 C# 6.0

38

我在目前的公司工作已经有六个多月了,我们目前正在使用Visual Studio 2012。我们将要开始构建一个新应用程序,我一直在试图获得升级到Visual Studio 2015的承诺,以便我们可以从最新的技术开始。不幸的是,这是一家小公司,需要考虑预算。

有没有人知道C# 6.0是否支持Visual Studio 2012。我想,由于它即将成为第三代老技术,可能不会得到支持。

更新:

我看到很多与VS2015社区版相关的评论,所以我想澄清一下我们公司对该版本的态度。公司拥有约20名员工和6人IT团队,他们都需要VS进行各种工作。我们还拥有超过100万美元的销售额,因此无法符合社区版的资格要求。

更新2:

问:C# 6.0中是否有一些必不可少的功能?

答:没有特定的功能,尽管属性初始化器和主构造函数将减少代码中的许多杂项。


1
它将不会获得新语言特性的支持。Visual Studio 2015使用Roslyn编译器代替旧的本地编译器,所有新功能都只在Roslyn中实现。 - MarcinJuraszek
VS 2013甚至不支持C# 6.0,您需要使用VS2015。您需要最新的编译器来支持此功能。 - Sievajet
1
如果你的雇主很小(年收入不到100万美元),则有一个新的社区版可以免费使用。与旧版Express相比,它包含插件并且与专业版本相当。 - Sascha
我研究了社区版,不幸的是我们每年的销售额超过1M美元。 - Roland Schaer
关于主构造函数的重要消息:https://dev59.com/jl8d5IYBdhLWcg3wXRIX - Vinicius Gonçalves
3个回答

58

可以使用NuGet包将C# 6.0安装到每个项目中的VS2012和VS2013中。 您需要为想要使用C# 6.0功能的每个项目安装此软件包。

https://www.nuget.org/packages/Microsoft.Net.Compilers/

通过Nuget安装最新的C#编译器

Install-Package Microsoft.Net.Compilers

编辑:如下面的评论所指出的,升级您的NuGet到最新版本,以确保与nuspec文件完全兼容。


1
你能详细说明一下吗?在使用NuGet安装Microsoft.Net.Compilers之后,我应该怎么继续? - Diabeteman
3
在你的项目中安装了NuGet包后,就可以开始在该项目中使用C# 6.0功能。例如添加一个表达式主体方法,如下所示:public int GetValue() => 10 * 10;如果你使用最新版本的ReSharper,你会发现该方法下面有红色波浪线。在其旁边出现的提示灯符号中,会有一个选项“启用C# 6.0功能”。 - Alex
1
这对我们本地部署的 TFS 2012 Build Controller 很有效!很棒的发现。 - SliverNinja - MSFT
1
我的代码编译正常。我没有Resharper。VS2012显示C# 6.0代码为错误。我该如何解决?请帮帮我。 - Mathew Sachin
4
即使新的C# 6功能已经编译成功,也无法避免在VS2012/2013中出现红色下划线,这是因为VS2012/2013的编辑器不理解新语法并显示错误。可以参考关于VS2013的社交MSDN帖子 - Fulvio
1
如果您使用的是较旧版本的VS2012,请确保先升级NuGet,否则旧版本可能无法正确解析nuspec。 - kenchilada

3

问题:有人知道C# 6.0是否会在Visual Studio 2012中支持吗?

答案:不会,绝对不会。这是出于技术和市场原因考虑。

C# 6.0是最新/最伟大/最前沿的C#版本,将随VS 2015一起发布。

如果您希望使用MSVS 2012,则必须编写C# 5.0或更低版本的代码。确保您的代码升级编译器时可移植。

问题:C# 6.0中是否有某些特定功能是您无法离开的?


1
谢谢您的回复。我已将我的答案作为原问题的更新添加进去了。 - Roland Schaer

-2

你需要升级。这样做的好处是,IDE会得到改进,有助于开发和新功能。

你可以考虑使用Visual Studio Community(以前是VS Professional)。当他们发布VS2015时,我期望会有类似于VS 2012 Community的版本发布。

请参见此处获取更多信息。在商业公司中,最多可以让5个开发人员获得一份副本。


1
请注意,商业公司许可证中的5个用户适用于“非企业”公司。企业公司的定义是拥有> 250台PC或> 100万美元的年收入(请参见上面链接页面中的第一个问题)。 - Frank Boyne
@FrankBoyne 在他的问题中提到他在一家小企业。如果公司拥有超过250台PC或100万美元的年收入,他们可以负担得起许可证费用。 - mlw4428

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接