У меня есть фрагмент кода, который я хочу упростить:
switch (typeString)
{
case "boolean":
CreateSimpleRows<bool>(ref group, value);
break;
case "datetime":
CreateSimpleRows<DateTime>(ref group, value);
break;
case "double":
CreateSimpleRows<double>(ref group, value);
break;
case "int32":
CreateSimpleRows<int>(ref group, value);
break;
case "int64":
CreateSimpleRows<long>(ref group, value);
break;
case "string":
CreateSimpleRows<string>(ref group, value);
break;
}
Метод объявлен как CreateSimpleRows<T>
. Я попытался передать экземпляр System.Type, но это не сработало.
Я наткнулся на этот ответ на похожий вопрос:
Передать экземпляр системы. Тип в качестве параметра типа для общего класса
Я проверил и увидел, что в классе MethodInfo есть MakeGenericMethod.
Дело в том, что я не знаю, как преобразовать «CreateSimpleRows» в экземпляр MethodInfo.
Возможно ли то, что я думаю о достижении, даже возможно?
Заранее спасибо за ответы.