У меня есть базовый класс (Baseclass), из которого я получил некоторые подклассы (Subclass1, Subclass2 и т. Д.). Для каждого подкласса, я хочу:Добавить анонимный объект подкласса в список базового класса
- вызов конструктора с 'фиксированных' аргументов (arg1, arg2 и т.д.);
- проверить, действительно ли экземпляр действителен (предположим, что существует общий метод IsValid); и
- Добавить экземпляр в список объектов.
Далее следует отрывок кода:
subclassList = new List<Type>()
{
typeof(Subclass1),
typeof(Subclass1),
...
};
List<Baseclass> objectList = new List<Baseclass>();
foreach (Type subclass in subclassList)
{
ConstructorInfo[] constructorArray = subclass.GetConstructors(BindingFlags.Public);
object o = constructorArray[0].Invoke(new object[] { arg1, arg2, ... });
if (((Baseclass)o).IsValid)
{
objectList.Add(Convert.ChangeType(o, subclass));
}
}
В чем проблема? –
Это не работает – Massimiliano