在 .NET Framework 中使用高版本C#语言特性

在.NET Framework 所有版本中,默认C#版本为7.3,如果要使用C#8.0、9.0、10.0甚至最新版的语言特性,只需要修改项目设置.csproj 文件 ,增加 <LangVersion>属性,来使用新的语言特性,旧版 .NET Framework 项目格式(csproj)修改项目设置文件,需要先卸载项目,再选择编辑项目文件。

<PropertyGroup>
    <LangVersion>12.0</LangVersion>
</PropertyGroup>

可以参考官方文档:配置 C# 语言版本

 这样设置之后在使用一些语法时会提示缺少System.Range/System.Index类等,可以使用PolySharp来自动生成这些类,PolySharp包可以从NuGet包管理器下载。因为此包不支持旧版项目引用样式packages.config,需要修改为PackageReference 引用样式(用于 .NET Core 项目、.NET Standard 项目),我们在配置文件中加入如下属性。

<PropertyGroup>
    <!--- ... -->
    <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
    <!--- ... -->
</PropertyGroup>

参考官方文档:项目文件中的 PackageReference

然后再从NuGet包管理器下载安装PolySharp包,即可使用多数高版本C#特性。

PolySharp包的介绍可以参考原文档:https://github.com/Sergio0694/PolySharp

注意:一定先添加<RestoreProjectStyle>属性,再安装PolySharp包,否则不生效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值