別のリストにあるすべての要素を ID で取得するにはどうすればよいでしょうか。リスト ロールがあります。このリストにあるすべてのロールを ID でデータベースから取得したいと思います。
コードファーストを使用しています。
これを実行するとエラーが発生しました:
var roles = db.Roles.Where(r => user.Roles.Any(ur => ur.RoleId == r.RoleId));
RoleId
int 型です。
エラー:
'SampleMVC.Domain.Role' 型の定数値を作成できません。このコンテキストでは、プリミティブ型 ('Int32、String、Guid など') のみがサポートされています。
ベストアンサー1
var listOfRoleId = user.Roles.Select(r => r.RoleId);
var roles = db.Roles.Where(r => listOfRoleId.Contains(r.RoleId));