//this method will return available members in a project public List <AvailTeamMember> GetAvailableMember(int projectId) { List <AvailTeamMember> availTeam = new List <AvailTeamMember>(); List <Projectmembers> promem = _teamRepo.GetProjectmembers(projectId); List <TeamMember> finalmemlist = new List <TeamMember>(); List <TeamMember> teammem = new List <TeamMember>(); List <TeamMaster> teams = GetTeam(projectId); foreach (TeamMaster tm in teams) { teammem = _teamRepo.GetTeamMember(tm.TeamId); foreach (TeamMember temem in teammem) { finalmemlist.Add(temem); } } foreach (Projectmembers pm in promem) { User master = _teamRepo.Master(pm.MemberId); AvailTeamMember avail = new AvailTeamMember(); avail.MemberId = master.Id; avail.MemberName = master.FirstName + ' ' + master.LastName; foreach (TeamMember tmm in finalmemlist) { if (pm.MemberId == tmm.MemberId) { avail.TeamId = tmm.TeamId; avail.Id = tmm.Id; break; } else { avail.TeamId = 0; avail.Id = 0; } } availTeam.Add(avail); } return(availTeam); }