LINQ If .Any匹配.Any

Las*_*vik 4 c# linq

我有2个字符串数组,如果_authRole数组中存在任何数组,我想返回.怎么做的?

 string[] _userRoles = userdata.Split(',');

 string[] _authRoles = AuthRoles.Split(',');


 bool isAuthorized = _authRoles.Any(_userRoles ??);
Run Code Online (Sandbox Code Playgroud)

/ M

Jon*_*Jon 11

如果你想要的是,以确定是否_authRoles_userRoles至少有一个共同的项目,然后用:

bool isAuthorized = _authRoles.Intersect(_userRoles).Any();
Run Code Online (Sandbox Code Playgroud)

您还可以Intersect以您选择的任何其他方式查询结果.


And*_*are 7

试试这个:

Boolean isAuthorized =
    _userRoles.Any(user => _authRoles.Contains(user));
Run Code Online (Sandbox Code Playgroud)