我有一个与数据库绑定的复选框列表,其中有大约9000个项目,其中一些被选中。我有列表,其中我有5000个项目。我必须检查复选框列表中的这5000个项目并保持未选中状态。请建议优化方式。
我尝试了什么
foreach (var eachName in Namelist)
{
foreach (ListItem eachCblNameItem in cblName.Items)
{
if (eachCblNameItem.Value == eachName)
{
eachCblNameItem.Selected = true;
}
else
{
eachCblNameItem.Selected = false;
}
}
}
答案 0 :(得分:1)
只是一个想法(linq)伪代码:
var itemsSelected = from item in checkBoxList.Items
join dbItem in database.SelectedItems
on item.UniqueKey equals dbItem.UniqueKey
select item;
foreach( var item in itemsSelected )
{
item.Selected = true;
}