ilist转换dataset
using System.Collections.Generic;
/// <summary>
/// Class1 瑕存?
/// </summary>
namespace Flowers.Web
{
public class NHibernateHelper
{
/**/
/// <summary>
/// Ilist <T> 杞㈡?DataSet
/// </summary>
/// <param name= "list "> </param>
/// <returns> </returns>
public static DataSet ConvertToDataSet <T> (IList <T> list)
{
if (list == null || list.Count <= 0)
{
return null;
}
DataSet ds = new DataSet();
DataTable dt = new DataTable(typeof(T).Name);
DataColumn column;
DataRow row;
System.Reflection.PropertyInfo[] myPropertyInfo = typeof(T).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
foreach (T t in list)
{
if (t == null)
{
continue;
}
row = dt.NewRow();
for (int i = 0, j = myPropertyInfo.Length; i < j; i++)
{
System.Reflection.PropertyInfo pi = myPropertyInfo[i];
string name = pi.Name;
if (dt.Columns[name] == null)
{
column = new DataColumn(name, pi.PropertyType);
dt.Columns.Add(column);
}
row[name] = pi.GetValue(t, null);
}
dt.Rows.Add(row);
}
ds.Tables.Add(dt);
return ds;
}
}
}
想问下: public static DataSet ConvertToDataSet <T> (IList <T> list)中的
ConvertToDataSet <T> 代表什么呀。!
我想引用这段代码我是这样写的:
Category category = new Category();
NHibernateHelper.ConvertToDataSet <T> (category.GetCategories);
总提示: CS0246: 找不到类型或命名空间名称“T”(是否缺少 using 指令或程序集引用?)
[解决办法]
T是具体类型的名字
如果class Category
NHibernateHelper.ConvertToDataSet <Category> (category.GetCategories);