2

linqクエリ構文が好きかどうかはわかりません...それは私の好みではありません。しかし、このクエリがラムダ式を使用するとどのようになるかわかりません。誰か助けてもらえますか?

from securityRoles in user.SecurityRoles
from permissions in securityRoles.Permissions
where permissions.SecurableEntity.Name == "Unit" && permissions.PermissionType.Name == "Read"
orderby permissions.PermissionLevel.Value descending
select permissions

ユーザーとセキュリティ ロールの間には多対多の関係があり、これがさらに混乱を招きます。

ありがとう!ケリー

4

2 に答える 2

5

このような:

user.SecurityRoles.SelectMany(securityRoles => securityRoles.Permissions)
                  .Where(permissions => permissions.SecurableEntity.Name == "Unit" && permissions.PermissionType.Name == "Read")
                  .OrderByDescending(permissions => permissions.PermissionLevel.Value)
于 2010-05-21T02:29:46.337 に答える
1
        user.SecurityRoles.SelectMany(securityRoles => securityRoles.Permissions,
                                      (securityRoles, permissions) => new {securityRoles, permissions}).Where(
            @t => permissions.SecurableEntity.Name == "Unit" && permissions.PermissionType.Name == "Read").OrderByDescending(
            @t => permissions.PermissionLevel.Value).Select(@t => permissions)
于 2010-05-21T02:26:32.287 に答える