首页 > 解决方案 > 如何传递对泛型方法的引用?

问题描述

如何传递对泛型方法的引用?

我有下面的课。

public static class DataTableUtil
{
    public static List<T> DataTableToList<T>(DataTable dt)
    {
        List<T> lstItems = new List<T>();
        if (dt != null && dt.Rows.Count > 0)
            foreach (DataRow row in dt.Rows)
                lstItems.Add(ConvertDataRowToGenericType<T>(row));
        else
            lstItems = null;
        return lstItems;
    }...

我用这种方式上课

var lista = DataTableUtil.DataTableToList<SasRating>(retorno).AsEnumerable();

SasRating 类是 POCO 类。我想通过工厂模式动态发送这个参数。有可能的 ?这个怎么做 ?

这是一些(无效)代码的示例,演示了我正在寻找的内容:

var genericObj = T;

if(T is SasRating)
{
     T = SasRating
}
else
{
     T = SasTest;
}

var lista = DataTableUtil.DataTableToList<T>(retorno).AsEnumerable();

标签: c#generics

解决方案


推荐阅读