//private IEnumerable<User> GetUsersInner(IOemClient client, Func<IUserView, bool> filter = null) //{ // var result = // this.GetUserViews(client, filter) // .Select(item => // new User() // { // Id = item.UserId, // FirstName = item.FirstName, // Surname = item.Surname, // Department = item.Department, // Cards = (client.ViewCards(item.UserId) ?? Enumerable.Empty<int>()), // }); // return result; //} //private IEnumerable<IUserView> GetUserViews(IOemClient client, Func<IUserView, bool> filter) //{ // var allUserViews = client.ViewUserRecords().UsersList().Select(pair => pair.Value); // var result = // allUserViews // .Where(item => item.Active) // .Where(filter ?? (item => true)); // return result; //} private IEnumerable<User> GetUsersInner(IOemClient client, string sqlWhereClause = null) { var result = this.GetUserViews(client, sqlWhereClause) .Select(item => new User() { Id = item.UserId, FirstName = item.FirstName, Surname = item.Surname, Department = item.Department, Cards = (client.ViewCards(item.UserId) ?? Enumerable.Empty<int>()), }); return result.ToList(); }