У меня есть следующее перечисление ролей членства:
public enum RoleName
{
RegisteredUser,
Moderator,
Administrator,
Owner
}
Я хочу иметь возможность извлекать все роли, больше или равные заданной роли.
Например, я ввожу Администратора, и я получаю IEnumerable с RoleName.Administration
и RoleName.Owner
Что-то в этом роде:
public static void AddUserToRole(string username, RoleName level)
{
var roles = Enum.GetValues(typeof(RoleName)).Cast<R>().ToList().Where(role => level > role);
foreach (var role in roles)
{
Roles.AddUserToRole(username, role);
}
}