您的位置:首页 > 编程语言 > ASP

ASP.NET DropDownList1 数据绑定的效率

2009-09-11 15:40 423 查看
在CodeProject上看到一篇数据绑定的测试评论,该评论已经被MVP认可了,我对这样的结果也感到十分的惊讶,看来,以后在写代码的习惯上要稍微有些修改了.

先给出测试的代码:

public void initList(DataTable dt)
{
DropDownList1.DataSource = dt;
DropDownList1.DataTextField = "empName";
DropDownList1.DataValueField = "empNumber";
DropDownList1.DataBind();
}

public void initList2(DataTable dt)
{
foreach (DataRow r in dt.Rows)
{
DropDownList2.Items.Add(new ListItem(r["empName"].ToString(), r["empNumber"].ToString()));
}
}

public void initList3(DataTable dt)
{
foreach (DataRow r in dt.Rows)
{
DropDownList3.Items.Add(new ListItem(r[0].ToString(), r[1].ToString()));
}
}
initList的效率比initList2和initList3的效率低可能十倍以上(太可怕了,我是没有认真测试过,但是估计有点夸张),initList2和initList3的效率差不多,但是initList3的效率会比initList2的效率高些,因为使用列号的代码不用在绑定的时候绑定的名称不用转换为对应的下标,并关联的数据源中的数据.还有,使用列号的时候,会使用Cache的,但并不是每次都会用到.所以使用initList3的数据绑定才是效率最高的.

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: