У меня есть проблема с использованием динамических типов для создания экземпляра пользовательского класса. Пример, у меня есть следующий класс:Создание экземпляра динамического типа
public class myClass<T>
{
public myClass(String header);
}
Если я использую следующий код, все работает отлично:
var myInstance = new myClass<int>("myHeader");
Однако, я нахожусь в положении, не имеют int
тип, определенный , поэтому мне нужно динамически отливать его от параметра общего типа. То, что я пытался до сих пор:
1.
Type myType = typeof(int);
var myInstance = new myClass<myType>("myHeader");
2.
int myInt = 0;
Type myType = myInt.GetType();
var myInstance = new myClass<myType>("myHeader");
Во всех примерах, которые я получаю следующее сообщение об ошибке:
The type or namespace name 'myType' could not be found (are you missing a using directive or an assembly reference?)
причин, почему я не могу использовать int
прямо потому, что я загружаю типы из определенных сборок во время выполнения, поэтому они не будут «в t "в любое время.
Вы можете сделать функцию родовым и просто сделать 'нового MyCLASS ("MYHEADER");'? –
Спасибо, Quantic, это мне тоже помогло. – m506