实体框架和包括

时间:2014-07-11 11:17:06

标签: vb.net entity-framework asp.net-mvc-5

我创建了一个aspnet登录帐户持有者表的edmx模型。

Entityframework删除AspNetUserRoles表并直接显示AspNetRole和AspNetUser表之间的关系

我遇到的问题是如何或者什么才能获得某个角色扮演的AspNetUser列表?

Public Function getAccountHoldersInRoles(role As String) As IEnumerable(Of AspNetUser)

    Dim aspNetUsers = From u In db.AspNetUsers.Include("AspNetRoles")

    For Each u In aspNetUsers

           ??????????????

    Next


    Return aspNetUsers
End Function

1 个答案:

答案 0 :(得分:0)

您不需要Include,除非您遇到上下文处理后需要数据的情况。

如果用户和角色具有多对多关系,那么这就是您所需要的。

C#

var usersInRole = db.AspNetUsers.Where(u => u.Roles.Any(r => r.RoleName == role));

VB

Dim usersInRole = db.AspNetUsers.Where(Function(u) u.Roles.Any(Function(r) r.RoleName = role))