Я упростил свой вопрос, поскольку методы расширения не имели к этому никакого отношения.Статическое поле не инициализируется
Вот фрагмент кода:
class MyClass
{
private static readonly char[] InvalidChars = new []{'\\', '/'};
public MyClass()
{
if (InvalidChars == null)
{
//how can this block be accessable?
}
}
}
Мой вопрос: есть ли сценарий, в котором InvalidChars может возвращать нуль, если она доступна в MyClass конструктор? Очевидно, что есть, потому что это то, что я вижу в своем приложении. Хотя я не понимаю, как это возможно.
Код, который вы указали, не генерирует исключение, которое вы описали. Я написал короткую, но полную программу, которая просто называется конструктором MyClass, и все в порядке. Измените свой вопрос, чтобы показать код, который демонстрирует проблему, иначе нам будет невозможно диагностировать. –
Где/как вы создаете экземпляр 'MyClass'? Это вообще не похоже на метод расширения. –
Вы уверены, что «SomeName» присвоено имя Proeprty? Я бы предположил, что это имя равно null или недопустимым. Также попробуйте установить точку останова и запустить отладчик –