在asp.net中绑定一个下拉列表VS

本文关键字:一个 下拉列表 VS asp net 绑定 | 更新日期: 2023-09-27 18:07:51

哪种填充下拉列表的方法更有效?

var info = db.table.Where( x => x.column == targetInformation).
           Select(x => new {x.item, x.index});
**************FOREACH
foreach( var infos in info)
{
   drowDownList.Items.Add(new {infos.item,infos.index.ToString()});
}
**************DATABIND
dropDownList.DataSource = info;
dropDownList.DataBind();

在asp.net中绑定一个下拉列表VS

正如John Saunders所说,这里的效率并不是真正需要考虑的问题,特别是考虑到DB操作的使用。

换句话说,两者的性能将几乎相同。

你应该考虑的是,作为一个程序员,什么是更有效的阅读?此外,您是否打算与团队中的其他人共享此代码?他们是更习惯wpf风格的代码,还是更习惯手工风格的代码?

也许在这种情况下,最好的效率是最大化代码的可读性。

这有点不同,但您可以尝试这样做:

var results = table.AsEnumerable().Where(row => row.Field<int>("SomeType") > 1);
foreach (DataRow row in results)
{
    dropDownList.Items.Add(row.Field<string>("SomeText"), row.Field<int>("SomeID"));
}
//you don't need to databind if you're adding the items manually
//dropDownList.DataSource = info; 
//dropDownList.DataBind();