当前位置:编程学习 > C#/ASP.NET >>

讨论:关于泛型以及如何将通用方法给抽象出来

--------------------编程问答-------------------- 应该是可以的,但需要把 SQL 做成参数传入
public IList<T> GetDataSource<T>(StringBuilder sbSql)
{
    IList<T> list = new List<T>();
    using (SqlDataReader dr = SqlHelper.ExecuteReader(ICon.GetCnnString("SourceDatabase"), CommandType.Text, sbSql.ToString()))
    {
        DbDynamicEntityToList<T> builder = DbDynamicEntityToList<T>.CreateBuilder(dr);
        while (dr.Read())
        {
            list.Add(builder.Build(dr));
        }
        dr.Close();
    }
    return list;
}
--------------------编程问答--------------------
引用 1 楼 tcmakebest 的回复:
应该是可以的,但需要把 SQL 做成参数传入
public IList<T> GetDataSource<T>(StringBuilder sbSql)
{
    IList<T> list = new List<T>();
    using (SqlDataReader dr = SqlHelper.ExecuteReader(ICon.GetCnnString("SourceDatabase"), CommandType.Text, sbSql.ToString()))
    {
        DbDynamicEntityToList<T> builder = DbDynamicEntityToList<T>.CreateBuilder(dr);
        while (dr.Read())
        {
            list.Add(builder.Build(dr));
        }
        dr.Close();
    }
    return list;
}


就这样就可以了,这个泛型比较简单,不过还需要的是 DbDynamicEntityToList<T>.CreateBuilder(dr);
CreateBuilder的泛型的实现~
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,