如何在 Visual Studio 2015 中使用 C# 7?
Posted
技术标签:
【中文标题】如何在 Visual Studio 2015 中使用 C# 7?【英文标题】:How to use C# 7 with Visual Studio 2015? 【发布时间】:2017-01-20 13:06:24 【问题描述】:Visual Studio 2017 (15.x) 支持 C# 7,但是 Visual Studio 2015 (14.x) 呢?
如何使用 C# 7?
【问题讨论】:
参考此链接:strathweb.com/2016/03/… @SunilKumar:在 VS 15(即 VS 2017)中启用它们。它在任何地方都没有提到 VS 2015(即 VS 14)。 【参考方案1】:您可以通过安装 Nuget 包 Microsoft.Net.Compilers 来替换 Visual Studio 随附的编译器以获得支持 C# 7 的版本:
引用此包将导致项目使用 中包含的 C# 和 Visual Basic 编译器的特定版本 包,而不是任何系统安装版本。
没有迹象表明我可以在包页面上看到这是否在 Visual Studio 2015 中得到正式支持。到目前为止,我的不彻底测试表明它可以工作但并非无痛 - C# 7 代码可以编译,但带有下划线红色波浪线表示语法错误: 注意,您还需要安装 Nuget 包 System.ValueTuple 才能使用新的 C# 7 值元组功能。
【讨论】:
在这种情况下,最好使用 VIsual Studio Code,或者直接安装 Visual Studio 2017 Community 这是一件好事。所以你可以慢慢地将一些项目切换到 VS2017,因为知道在紧急情况下其他开发人员可以使用你的代码。 请注意,如果您的中型或大型公司 VS2017 社区版的员工可能无法用作被许可人,我在理论上同意 @PanagiotisKanavos。我相信 VS Code 是真正的 FOSS。 我在我的 Xamarin.Forms UWP、Windows 8.1 和 Windows Phone 8.1 项目中安装了最新的 Microsoft.Net.Compilers nuget,以及最新的 System.ValueTuple nuget(加上所有最新版本)其他 System.* 系列 nugets)。在构建和运行时,一切似乎都运行良好。 (我还没有尝试过调试器功能集的每一个角落。) VS2015.3,为 .NET 4.7.1 编译:Microsoft.Net.Compilers is only supported on MSBuild v15.0 and above
- 我需要使用这个版本:nuget.org/packages/Microsoft.Net.Compilers/2.4.0 来构建它,然后它运行良好。 :)【参考方案2】:
就我而言,仅安装 Microsoft.Net.Compilers 不起作用。相反,我必须执行以下操作:
-
为项目安装 Microsoft.CodeDom.Providers.DotNetCompilerPlatform(Tools => NuGet Package Manager => Manage Nuget Packages解决方案...)并安装 Microsoft.CodeDom.Providers.DotNetCompilerPlatform。
为项目安装最新的 Microsoft.Net.Compilers
为要使用的最新 C# 功能安装任何其他 NuGet 包。就我而言,我的目标是使用元组,所以我安装了 System.ValueTuple 并且工作正常。
但仍需注意,Visual Studio 2015 默认编译器不知道的 C# 代码下方仍会有红色波浪线。
【讨论】:
以上是关于如何在 Visual Studio 2015 中使用 C# 7?的主要内容,如果未能解决你的问题,请参考以下文章
Intel parallel studio 2017 集成在visual studio 2013 中,现在如何集成到visual studio 2015