Создайте консольное приложение для воспроизведения:
struct Test
{
public static readonly Test? Null = null;
}
class Program
{
static void Main(string[] args)
{
var t = Test.Null;
}
}
Он компилируется, но во время выполнения мы будем иметь следующее:
Необработанное исключение типа "System.TypeLoadException" произошло в файле mscorlib.dll. Дополнительная информация: Не удалось загрузить тип ConsoleApplication17.Test из сборки 'ConsoleApplication17, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null'.
Этот подход решает проблему:
struct Test
{
public static Test? Null => null;
}