当前位置:首页  社会动态

社会动态

C#增加最新主要版以及预览版两种语言版本

2021-03-12 14:05:41
导读

微软从Visual Studio 2019第四预览版以及候选版开始,对C#版本以及工具进行调整。现在C#的语言版本(LangVersion)增加了最新主要版本(LatestMajor)以及预览版(Preview),因此除了原先的最新(Latest)版本,提供最新的主要以及次要更新外,最新主要版本只提供C#最新的主要更新,而预览版则提供C#的预览功能。

当开发者没有指定语言版本时,则预设的版本值现在由专案中的开发框架决定,也就是说,假设专案的目标框架使用C#预览版,而同时也存在相对应的预览版C#,则预览版便为预设使用的版本,但是当使用者没有指定预览版框架时,系统便会使用最新版本。

因此微软提到,针对Netcoreapp3.0预览版或是Netstandard2.1预览版,预设的C#语言版本为预览版,使用者可以利用的C# 8.0预览版功能,将完全根据使用的编译器版本以及.NET SDK,因此随着未来使用更新的预览版时,可以获得的功能也会更多。

而在.NET开发框架方面,预设的C#语言版本则是最新版本,所以所有使用的C# 8.0功能,都会出现编译错误,Visual Studio工具会跳出快速修复提示,要求开发者更改专案或是解决方案的语言版本,藉此解决遭遇到的问题。而针对Netcoreapp3.0或是Netstandard2.1预览版跟.NET并存的情况下,系统将会选择使用最新版的C#。

目前Visual Studio 2019预设使用的C#版本,相当于最新主要版本,微软解释,第一个原因是,现在C#的更新正处于两个Visual Studio发布周期之间,但是Visual Studio的新专案仍然预设使用较旧版的C#,第二个原因则是,对于使用.NET Core 3.0预览版的专案,使用C# 8.0是更好的选择,但是无法不在专案预设使用.NET Core 3.0预览版的情况下,使C# 8.0成为预设值。

微软预告,C# 8.0以及.NET Core 3.0将会一起释出正式版,因此到时候,语言版本的最新版以及最新主要版本都会是C# 8.0,而预览版则未定,当开发者没有指定专案语言版本,则一率被视为使用最新的版本C# 8.0正式版。

微软希望在发展C#以及.NET Core新功能的同时,让开发者赶快跟上开发的脚步,无缝的使用这些新功能,当开发者在开发生命周期初期接触这些功能,就能拉长新功能回馈的时间区间。微软提到,所有的C# 7.3以及更低版本都能在Visual Studio 2019相容,功能及行为都没有改变,但是也提醒,当开发者在使用C# 8.0预览功能时要注意,预览版本间不保证相容,在未来功能行为可能随时会改变。

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。