Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在我的LINQ查询中使用哈希集?_C#_Entity Framework_Linq_Hashset - Fatal编程技术网

C# 如何在我的LINQ查询中使用哈希集?

C# 如何在我的LINQ查询中使用哈希集?,c#,entity-framework,linq,hashset,C#,Entity Framework,Linq,Hashset,我有一个针对所有用户的查询,如下所示: from u in db.AspNetUsers orderby u.UserName select .... 从…起 u在db.AspNetUsers中 排序子句 u、 用户名 选择 .... 那很好。但现在我想筛选特定的用户角色。有一个u.AspNetRoles,它是一组对象。每个对象都有一个名称属性,该属性是角色的名称 因此,我只想选择具有名称等于“SuperAdmin”的角色对象的用户 以前,我只是尝试使用角色数据连接表,但

我有一个针对所有用户的查询,如下所示:

from u in db.AspNetUsers orderby u.UserName select .... 从…起 u在db.AspNetUsers中 排序子句 u、 用户名 选择 .... 那很好。但现在我想筛选特定的用户角色。有一个
u.AspNetRoles
,它是一组对象。每个对象都有一个
名称
属性,该属性是角色的名称

因此,我只想选择具有
名称
等于
“SuperAdmin”
的角色对象的用户


以前,我只是尝试使用角色数据连接表,但这不起作用,因为有一个AspNetUserRoles表,它只有一个UserID和一个RoleID,没有主键。假设不建议为没有主键的表创建实体类。

我认为这符合您的要求:

from
    u in db.AspNetUsers
where
    u.AspNetRoles.Any(r => r.Name == "SuperAdmin")
orderby
    u.UserName
select
    . . .

如果集合中的任何项满足lambda标准(
r=>r.Name==“SuperAdmin”
,则
Any
方法将返回true)。如果用户对象
u
的集合
AspNetRoles
中的任何项具有
名称
,其中值为
“SuperAdmin”
,则
any
的结果为真。如果没有一项符合标准,则
Any
返回false。

我认为这符合您的要求:

from
    u in db.AspNetUsers
where
    u.AspNetRoles.Any(r => r.Name == "SuperAdmin")
orderby
    u.UserName
select
    . . .

如果集合中的任何项满足lambda标准(
r=>r.Name==“SuperAdmin”
,则
Any
方法将返回true)。如果用户对象
u
的集合
AspNetRoles
中的任何项具有
名称
,其中值为
“SuperAdmin”
,则
any
的结果为真。如果所有项都不符合标准,则
Any
将返回false。

需要明确的是:您只想查找角色为“超级管理员”的用户,对吗?是的,这是正确的。需要明确的是:您只想查找角色为“超级管理员”的用户,对吗?是的,这是正确的。