于是我想到了使用索引器,这不正好可以做为一个虚拟的数组来用吗?呵
我的思路就是为实体类里增加一个索引器,按顺序为每个属性设置值,如下:
1
set
2
{
3
设置字段值
23
}

2

3

23

然后上层做一个for循环,使用DataReader读取数据库字段的索引,每次通过索引器判断,这样就可以为相应的属性去赋值了,呵呵,但一个前提就是实体类的顺序必须和数据库表里的字段顺序一样哦,如下
1
for (int i = 0; i < dr.FieldCount; i++)
2
{
3
if (dr[i] != DBNull.Value)
4
EmployeesDS[i] = dr[i].ToString();
5
}

2

3

4

5

虽然我以下方法是可以解决实体一次性赋值的问题,但另一个问题时在写实体类时会加大了工作量,如果大家有更好的方法,也欢迎提供:)