【发布时间】:2020-04-09 01:51:52
【问题描述】:
是否有 C# 8 的编译器指令或检测是否设置了 <nullable>enable</nullable>?
我有一个只有源代码的 Nuget 包,它可以帮助处理可空引用类型的故事。如果设置了,我想有条件地设置#nullable enable指令,例如:
#ifdef ICANHASNULLABLE
#nullable enable
#endif
和
#ifdef ICANHASNULLABLE
string Foo(string? val)
#else
string Foo(string val)
#endif
我有各种使用 .NET Core 2.1 SDK 构建的东西,并且正在努力将这些东西带到 .NET Core 3.1,尽管速度很慢,而不仅仅是通过翻转开关。该指令仅指向框架版本,而不是语言版本。
【问题讨论】:
标签: c# roslyn c#-8.0 nullable-reference-types