1

我正在使用 Entity Framework 5,并且拥有以下实体:用户、角色和文件。

我需要检查两个角色列表是否至少有一个共同点:

List<Role> a = user.Roles;
List<Role> b = file.Roles;

Boolean commonRoleFound = a.Intersect(b).Count() > 0;

有一个更好的方法吗?也许使用任何?也许其他?

性能更好的选择是什么?

谢谢你,米格尔

4

1 回答 1

1

从理论上讲,“任何”会更快,因为您不需要知道有多少,只需知道至少一个相交即可。在找到两个列表中的记录后,它可能会停止比较。

于 2013-02-17T18:23:05.277 回答