Использование Reflection для установки значения статической переменной перед инициализацией объекта?

Есть ли способ установить значение статической (частной) переменной для объекта, который не был инициализирован? Метод SetValue требует экземпляра, но я надеюсь, что у него есть способ обойти это.

Ответы

Ответ 1

Для статических значений вы можете передать значение null для параметра экземпляра.

var type = typeof(SomeClass);
var field = type.GetField("SomeField");
field.SetValue(null, 42);

Ответ 2

Вы могли бы создать статическую функцию, которая является общедоступной и использовать ее для установки вашей частной статической переменной?