Доброго всем.
Есть такой кусок кода.
static void Main(string[] args)
{
CallClass<myclass1>();
}
static void CallClass<T>() where T: new()
{
T cls = new T();
ShowName((IInterface)cls);
}
То что нужно тут для меня работает. (Это тестовый набросок)
Можно ли вызвать CallClass<
myclass1>(); но myclass1 (нужный мне класс) как то передать через строку?
У меня таких классов будет много. И данные я буду брать из бд в зависимости от поля вызывать CallClass с нужным классом.
Можно конечно написать SWSITCH и в зависимости от данных вызвать типа такого
switch
case 1 CallClass<myclass1>();
case 2 CallClass<myclass2>();
case 3 CallClass<myclass3>();
case 4 CallClass<myclass4>();
.....
+Я умею динамически вызывать нужный класс через System.Reflection.Assembly.GetExecutingAssembly().CreateInstance("ConsoleApp6.myclass1");
и что нужно работает.
Но хотелось бы как то через CallClass<"T"> так аккуратней и красивей код
Спасибо.