执行多个查询然后将它们与LINQ联合起来?

时间:2010-12-22 11:02:32

标签: linq membership-provider role-based user-roles

我正在尝试构建一个下拉列表,其中包含登录用户可用的选项(即用户可以为其创建页面的页面类别),但是,由于其性质,这些列表基于用户角色我们的业务如何运作 - 用户可以属于多个角色,每个角色可以在下拉列表中选择不同的选项。

我想为多个角色的用户做的是组合每个角色的选项,并将其用作下拉列表的值。

我假设我可以通过为每个(For Each r In userRoles)运行它们然后将它们联合起来运行多个LINQ查询吗?

虽然我不知道这是否可行,但我正试图这样做。

是否有可能或者我咆哮错误的树?

请有人请,请指出正确的方向吗?

1 个答案:

答案 0 :(得分:0)

听起来你可以加入用户角色和选项,然后分组选项。

像这样的东西

Dim userId = GetCurrentUserId
Dim userOptions = From userRole In UserRoles
                Join roleOption In RoleOptions
                On userRole.roleId Equals roleOption.roleId And 
                     userRole.userId Equals userId
                Group By OptionId = roleOption.optioId, OptionName = roleOption.name
                Into UserOptions = Group
                Order By OptionName

我不是一名VB.NET程序员,这完全没有经过考验,但希望你能得到这个想法。