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