Нет, это не вопрос дженериков.
У меня есть шаблон Factory с несколькими классами с внутренними конструкторами (я не хочу, чтобы они создавались, если не через фабрику).
Моя проблема заключается в том, что CreateInstance
завершается с ошибкой «Для этого объекта не определен конструктор без параметров, если я не передам« true »для непубличного параметра.
Пример
// Fails
Activator.CreateInstance(type);
// Works
Activator.CreateInstance(type, true);
Я хотел сделать фабрику универсальной, чтобы сделать ее немного проще, например:
public class GenericFactory<T> where T : MyAbstractType
{
public static T GetInstance()
{
return Activator.CreateInstance<T>();
}
}
Однако мне не удалось найти, как передать этот «истинный» параметр, чтобы он мог принимать непубличные конструкторы (внутренние).
Я что-то пропустил или это невозможно?