asp.net三层架构的问题

来源:百度知道 编辑:UC知道 时间:2024/05/12 11:15:38
最近再重新写自己的网站 想整个采用三层模式来写
遇到了点问题
1.我现在用的是泛型实体集合直接绑定数据控件 它与传统的DataSet,DataTable效率相比如何?
2.在UI层调用底层方法提取数据的时候我是组合的sql语句 没有用固定写死 所以在从数据库取出数据绑定到实体集合上时 实体的属性可能每次都不一样
SqlDataReader dr = SqlHelper.RunProcExecuteReader("DynamicSql",param);
IList<Model> DataList = new List<Model>();
while (dr.Read())
{
Model _model = new Model();
_model.ID = dr.GetInt32(dr.GetOrdinal("ID"));
_model.Name = dr.GetString(dr.GetOrdinal("Name"));
//这里的属性是动态的
//....
//怎么办啊?
DataList.Add(_model);
}
dr.Close();
return DataList;

因为是自己的网站 所以不想用反射 而且数据量也不小
我看过一个给实体类传个IDataReader 用异常处理赋值
但是我有十几W的数据 20多个字段
每次赋值都要处理异常啊...那个效率想想都....
大家有没有什么办法啊???
属性的个数是动态的啊!

属性是动态的什么意思~
c#的属性还可以在使用的同时定义吗???像javascript一样??
不懂

做一个实体类,属性全加上,属性不赋值的就留空。
绑定时随便绑定属性就行了,

1.DataReader和DataSet效率看具体情况了,DataReader是一次读取一条记录,DataSet是把所有数据读到内存里再操作,所以很占内存,考虑用DataReader省资源

2.每个表定义一个Model对象,操作不同表的时候用不通的Model对象缓存这个记录,