.net - 是否可以在 .NET Framework 4.x 中使用带有 C# 9 Records 的库

标签 .net c#-9.0

有没有办法用记录创建库,然后在旧的 .NET Framework 4.x 应用程序中使用它?

最佳答案

是的,虽然这不受官方支持。
首先,您必须将 LangVersion 设置为 9,您可以通过手动编辑 csproj 来实现,例如

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>net472</TargetFramework>
        <LangVersion>9.0</LangVersion>
    </PropertyGroup>

</Project>

然后,您必须将以下文件添加到您的库中:
namespace System.Runtime.CompilerServices { internal class IsExternalInit { } }
之后,您应该能够像往常一样在您的图书馆中声明和使用记录。

关于.net - 是否可以在 .NET Framework 4.x 中使用带有 C# 9 Records 的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65663172/

相关文章:

C# "anyString"。包含('\0',StringComparison.InvariantCulture)在.NET5中返回true,在较旧版本中返回false

c# - 构造函数中 C# 记录上的 JsonProperty

c# - Controller 中的 HttpPostedFileBase Null - 想要将文件路径保存到数据库

Azure 函数.Net 5 : Is it possible to implement POCO binding somehow?

c# 9.0 记录 - 反射和通用约束

.net - 导入定宽文件到oracle

c# - 将 Asp.Net Core 3.1 应用程序升级到 .Net 5 后,某些 C# 9 功能不可用

java - 最正确地利用了 SOLID 原则的 OSS .net/java 项目有哪些?

c# - 为什么我的表格这么害羞?

c# - .NET 秒表 - 性能损失