16
創建一個控制檯應用程序重現:它看起來像你的C#bug嗎?
struct Test
{
public static readonly Test? Null = null;
}
class Program
{
static void Main(string[] args)
{
var t = Test.Null;
}
}
這是編譯的,但我們將在運行時間如下:
的類型「System.TypeLoadException」發生未處理的異常中的mscorlib .dll文件。其他信息:無法從程序集'ConsoleApplication17,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'加載類型'ConsoleApplication17.Test'。
這種方法解決了這個問題:
struct Test
{
public static Test? Null => null;
}