多対多の関係を持つロールとユーザーの2つのエンティティタイプがあります。つまり、Role には Users プロパティがあり、User には Roles プロパティがあります。定義された役割に属するユーザー名を含む文字列配列を取得する必要があります。コードを書きましたが、エレガントではありません。1 つの linq 式でそれを行いたいです。出来ますか?
public override string[] GetUsersInRole(string roleName)
{
List<string> names = new List<string>();
using (MembershipDb db = new MembershipDb())
{
Role role = db.Roles.FirstOrDefault(r => r.Name == roleName);
foreach (User u in role.Users)
{
names.Add(u.UserName);
}
}
return names.ToArray();
}