public int Id { get; set; }
public string Username { get; set; }
public class UserAuthorization
public bool IsAuthorized { get; set; }
public Guid UserId { get; set; }
public IEnumerable<User> GetAuthorizedUsers(IEnumerable<User> users,
IEnumerable<UserAuthorization> userAuthorizations)
var filteredUsers = new List<User>();
if (userAuthorizations.Count(auth => auth.IsAuthorized) > 0)
public static void Main()
var users = new List<User>()
new User() { Id = 1, Username = "abc" },
new User() { Id = 2, Username = "def" },
new User() { Id = 3, Username = "ghi" }
var userAuthorizations = new List<UserAuthorization>()
new UserAuthorization() { UserId = 1, IsAuthorized = false },
new UserAuthorization() { UserId = 2, IsAuthorized = false },
new UserAuthorization() { UserId = 3, IsAuthorized = true }
var authorizedUsers = UserManager.GetAuthorizedUsers(users, userAuthorizations);
foreach (var user in authorizedUsers)
Console.WriteLine(string.Format("{1}", user.Username));