public static UserListModel Get(IDb db) { var model = new UserListModel { Users = db.Users .OrderBy(u => u.UserName) .Select(u => new ListItem { Id = u.Id, UserName = u.UserName, Email = u.Email, GravatarUrl = !string.IsNullOrWhiteSpace(u.Email) ? Utils.GetGravatarUrl(u.Email, 25) : null }).ToList() }; var roles = db.Roles .ToList(); foreach (var user in model.Users) { var userRoles = db.UserRoles .Where(r => r.UserId == user.Id) .ToList(); foreach (var userRole in userRoles) { var role = roles.FirstOrDefault(r => r.Id == userRole.RoleId); if (role != null) { user.Roles.Add(role.Name); } } } return(model); }