如何在Visual Studio 2017项目中启用C#7的所有功能?

色度:

在Visual Studio 2017发布之后,我想尝试使用新的C#7功能创建简单的控制台项目。我希望我只是下载新的Visual Studio 2017,然后创建新的控制台项目并可以使用新的C#7功能。但是我不能。

我可以使用某些功能,例如如果安装了NuGet包System.ValueTuple,则可以使用Tuples

但是对于其他功能,我不知道需要做什么。例如,此NuGet问题

我现在需要做所有这些肮脏的安装吗?或者我可以以更简单的方式启用c#7功能?

斯科特·张伯伦:

对于您在问题的第二部分中链接到的任意类似于任务的类型,您需要包括该System.Threading.Tasks.Extensions软件包。

之所以需要这些NuGet软件包,是因为新的语言功能依赖于添加到.NET框架中的新类型。C#语言功能依赖的新类型将不会“内置到框架中”,直到4.6.2之后发布的下一个次要版本不破坏SemVer 1 为止因此,除非您使用该框架的下一个版本来构建项目,否则将需要使用NuGet软件包才能使这些功能正常工作。

这与使扩展方法在.NET 2.0项目中工作没有什么不同您可以使用扩展方法,但是您需要使用NuGet包(或自己添加代码)来获取它依赖的类型以添加​​到您的项目中。


1:所以4.7或5.0,无论他们决定怎么称呼它,如果有4.6.3,它将不在那个版本中,因为那不是次要发行版的颠簸,而是补丁版本的颠簸,您不能在补丁版本中更改API,而不会违反语义版本控制。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Visual Studio 2015中使用C#7?

如何在Visual Studio中启用C ++ 17编译?

如何在Visual Studio 2017中启用WiX项目

如何在Visual Studio 2015中启用WiX项目

如何在Visual Studio中实际搜索所有文件

Roslyn:如何在Visual Studio外部加载现有项目

如何在Visual Studio中将库包含到项目中?

如何在Visual Studio 2015项目中使用Qt?

如何在Visual Studio 2015中启用Web开发功能?

C#7功能在Visual Studio 2017 RC上的Web项目中不起作用

如何在现有项目中启用C#7功能

在新的VS Studio 2017 ASP.NET MVC 5.2.3项目中使用C#7功能时编译错误

Visual Studio 2017 Web项目:不能使用C#7

如何在Visual Studio 2017中创建Visual c ++ MFC控制台项目

如何在Visual Studio 2017中创建MVC项目?

如何在Visual Studio 2017中为C ++安装Npgsql

如何在Visual Studio 2017 Office加载项TypeScript项目中实现Polyfill Promise

如何在Visual Studio 2017项目中安装的_Layout中引用npm软件包?

如何在Visual Studio 2017中重新启用格式

如何在Visual Studio项目中访问其他SDK

如何在Microsoft Visual Studio 2017中检查C ++版本

如何在Visual Studio的整个项目中定位变量?

如何使Visual Studio在项目中包括所有排除的文件

如何在Visual Studio的同一项目中制作多个程序文件

如何在 Visual Studio 中集成项目

如何在 Visual Studio 2017 VSIX C# 项目中启用/禁用命令

如何在 Visual Studio 2017 中有效调试?

如何在 Visual Studio 2017 中使 != 变为 ==

如何在 Visual Studio Code 中启用预览功能?