从LINQ查询填充复选框值?

时间:2013-12-07 18:15:19

标签: asp.net vb.net linq

我正在尝试根据LINQ查询填充复选框列表中的选中值。但我无法弄清楚如何做到这一点。

我有一个名为UserRoles的Enum,在页面加载时,我将复选框列表绑定到枚举值和描述。

 uRoles.DataSource = RiseBi.Enumeration.GetEnumDescriptions(GetType(UserTypes))
 uRoles.DataTextField = "Value"
 uRoles.DataValueField = "Key"

接下来获取用户角色:

Public Shared Function GetAllUserRoles(ByVal EID As Integer) As IQueryable(Of RiseDB.UserRole)
        Dim DB As New RiseDB.RiseDBContainer
        Dim tmp = (From p In DB.Users Where p.Id = EID).First
        Return tmp.UserRoles
    End Function

填充与角色匹配的特定用户的复选框的最佳方法是什么?

我在想UserRoles中每个值的循环以及它们匹配的位置检查它,但是必须有一个更简单的方法,不是吗?

1 个答案:

答案 0 :(得分:0)

msdn CheckBoxList Class

中的

  

要确定CheckBoxList控件中的选定项,请遍历Items集合并测试集合中每个项目的Selected属性。

所以只有循环来检查项目