Moses_k Ответов: 1

Преобразование строки В тип класса


Привет,
У меня есть вопрос о таком типе метода, как этот:

Method.customeName<t>(db);

мое определение Т-это общее название класса

Я хотел бы передать свое имя метода этому универсальному типу.
Когда я получаю это имя класса элемента для массового моего метода, оно находится в строковом типе.
Как я могу передать это имя как приемлемый универсальный тип, чтобы удовлетворить мои требования?
customeName<T> type.

What I have tried:

convert some type as a 
<pre> object Te = Activator.CreateInstance(t);

1 Ответов

Рейтинг:
1

OriginalGriff

Я почти уверен, что вы не можете: система должна знать тип универсального ("т" в определении класса), когда вы действительно используете его.

Таким образом, вы не можете передать имя типа конструктору универсального класса и ожидать, что он определит для вас, каким именно типом должен быть ваш экземпляр класса - вы должны быть явными при создании экземпляра. Помните, что C# строго типизирован, поэтому ваша идея нарушит это, слабо введя объявленную переменную экземпляра.

Я не могу отделаться от мысли, что вы переосмыслили это и пытаетесь быть слишком умным: я бы рассмотрел, что вы пытаетесь сделать и почему вы думаете, что это хорошее решение. Возможно, вы также захотите взглянуть на dynamic вместо этого ключевое слово.