110,567
社区成员
发帖
与我相关
我的任务
分享
protected virtual IList GetListSource() {
if(DataSource == null) return null;
IListSource ls = DataSource as IListSource;
if(ls != null) return ls.GetList();
DataTable table = DataSource as DataTable;
if(table != null) return table.DefaultView;
IList list = DataSource as IList;
return list;
}
class BaseClass
{
protected string Name;
public virtual string name
{
get
{
return Name;
}
set
{
Name = value;
}
}
public int age { set; get; }
}
string outPut = "";
List<BaseClass> bc = new List<BaseClass>();
PropertyInfo[] pi = bc.GetType().GetProperties();
foreach(PropertyInfo p in pi)
{
outPut += p.Name + "<br />";
}
Response.Write(outPut);
输出的结果是:
Capacity
Count
Item
可以看得出,对于list就不适合这么处理(用GetProperties())
要不就用接口实现,对于datatable一种实现,对于list是另一种实现……