在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] 删除。
我来说两句