Csharp/C#教程:如何为所有项目更改Visual Studio 2017默认语言版本?分享


如何为所有项目更改Visual Studio 2017默认语言版本?

如何在C#7.0上为所有项目设置语言版本?

项目/属性/构建/高级… /高级构建设置屏幕

默认参数来自哪里,我想更改默认值

PS:我不是指UI语言

default值的含义来自C#编译器本身。 所以为了改变它的意思,你需要改变编译器。

但是在Visual Studio 2017附带的编译器中, default实际上意味着C#7.0,所以你不需要做任何事情。

Visual Studio Project System仅将语言版本值传递给MSBuild。 MSBuild将其作为/langversion选项进一步传递给C#编译器。 /langversion选项允许您指定编译器接受的高级语言版本。 换句话说,它允许您将语言function限制用于特定版本。 如果使用高于您指定的语言版本的function,C#编译器将发出错误。 就这样。 如果将/langversion指定为default ,则C#编译器将接受最后一个主要C#语言版本包含的所有有效语法(请参阅MSDN上的/ langversion(C#编译器选项)页面)。 Visual Studio 2017附带的最新主要C#版本是7.0。 请参阅C#GitHub存储库中C#语言版本页面中添加的function 。

如果您需要启用最新次要版本(7.1,7.2等)的function或禁止同时为多个项目或解决方案使用某些新的C#function,则可以使用MSBuild 15 Directory.Build.props自定义文件。 在MSDN上自定义构建文章的相关摘录:

…现在,您可以通过在repo根目录下名为Directory.Build.props的单个文件中将其添加到每个项目中,从而在一个步骤中添加新属性。 运行MSBuild时,Microsoft.Common.props会在目录结构中搜索Directory.Build.props文件(而Microsoft.Common.targets会查找Directory.Build.targets)。 如果找到一个,则导入该属性。 Directory.Build.props是一个用户定义的文件,它为目录下的项目提供自定义。

下面的Directory.Build.props文件示例指示C#编译器接受所有项目中最新的次要C#版本(Visual Studio 2017版本15.5.3中的C#7.2)的所有有效语法,因为它们的.csproj文件不包含标签优先:

   latest   

有关更多信息,请查看

上述就是C#学习教程:如何为所有项目更改Visual Studio 2017默认语言版本?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/988678.html

(0)
上一篇 2021年12月24日
下一篇 2021年12月24日

精彩推荐