PolySharp 提供了针对 C# 语言特性的生成型、仅包含源代码的多重实现,可轻松在低版本中使用所有不依赖运行时的特性。添加引用,设置您的 C# 编译器选项,即可使用这些多重实现。
PolySharp 提供了针对 C# 语言特性的生成型、仅包含源代码的多重实现,可轻松在低版本中使用所有不依赖运行时的特性。添加引用,设置您的 C# 编译器选项,即可使用这些多重实现。
简单地说,您是否在使用 .NET Framework、UWP 或其他旧版 .NET 运行时,但仍然希望使用 C# 14 中的所有新功能?那么,这套库就能帮助您实现这一点!它会为您生成 C# 编译器需要"看到"的所有"魔术类型",即使您没有使用最新的框架,也可以允许使用新的语言功能。
注意: 并非所有新的 C# 功能都可以通过这种方式"欺骗"使用(例如需要运行时支持的功能,如 静态抽象成员,仍然无法使用)。但其他几乎所有功能都可以使用(例如可为空标注、模式匹配等),而且这适用于大量新的 C# 功能。请尝试使用 PolySharp,不要停留在 C# 6.0 或其他旧版本上!
注意: 在 .NET Framework 3.5 中的使用受到限制,因为 BCL 存在缺陷。特别是,除非引用了
System.ValueTuple,否则System.Range类型将不会被生成(这意味着例如列表模式默认情况下将不起作用),而一些功能,如记录,将完全无法使用,因为 C# 编译器缺少了一些必要的 API,无法进行多态化。所有其他功能都应按预期工作。
暂无开放 Issues,或尚未同步最近议题。