列表以检查asp.net中checkboxlist中的项目

时间:2014-10-30 22:32:14

标签: c# asp.net .net

我有一个与数据库绑定的复选框列表,其中有大约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;
                    }

                }

            }

1 个答案:

答案 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;
}