public TeamListComplete GetTeams() { List <int> dataJoined = new List <int>(); List <int> dataPending = new List <int>(); using (var ctx = new ApplicationDbContext()) { foreach (var item in ctx.TeamsData) { if (item.UserID == _userID) { if (item.Private == false) { dataJoined.Add(item.TeamID); } else { dataPending.Add(item.TeamID); } } } var joinedquery = ctx .Teams .Where(e => e.OwnerID == _userID || dataJoined.Contains(e.TeamID)) .Select( e => new TeamListItem { TeamID = e.TeamID, Title = e.Title, Description = e.Description, OwnerName = e.OwnerID } ); var pendingquery = ctx .Teams .Where(e => dataPending.Contains(e.TeamID)) .Select( e => new TeamListItem { TeamID = e.TeamID, Title = e.Title, Description = e.Description, OwnerName = e.OwnerID } ); var Joined = joinedquery.ToArray(); var Pending = pendingquery.ToArray(); var ret = new TeamListComplete { JoinedTeams = Joined, PendingTeams = Pending }; return(ret); } }
public TeamListComplete ConvertIDToUserName(TeamListComplete listItems) { using (var ctx = new ApplicationDbContext()) { foreach (var listItem in listItems.JoinedTeams) { foreach (var item in ctx.Users) { if (item.Id == listItem.OwnerName) { listItem.OwnerName = item.UserName; } } } foreach (var listItem in listItems.PendingTeams) { foreach (var item in ctx.Users) { if (item.Id == listItem.OwnerName) { listItem.OwnerName = item.UserName; } } } return(listItems); } }