获取以编程方式绑定复选框列表的所有值

时间:2012-03-16 11:32:55

标签: c# asp.net linq-to-sql checkbox

我有一个复选框列表,该列表以编程方式绑定到数据源,DataValueField"Id"DataTextField"Speciality".

目的是让用户检查至少一个speciality(或多个)ID然后保存到数据库中。

问题在于,如果用户选中了多个,系统只会选中一个已选中的IDs

如何获取已选中复选框的所有ID?我正在使用LINQ2SQL

2 个答案:

答案 0 :(得分:0)

您是否使用SelectedItems查找已检查的内容?那不是你想要的。您应该使用Items属性并使用LINQ表达式循环遍历它以查找已检查的属性。

var Values = CheckBoxList.Items
        .Cast<ListItem>()
        .Where(l => l.Selected)
        .Select(i => int.parse(i.Value));

答案 1 :(得分:0)

也许是这样的:

int temp=0;
var checkIds= yourCheckBoxList.Items.Cast<ListItem>()
        .Where (li =>li.Selected && int.TryParse(li.Value,out temp))
        .Select (s=>temp);