public List <Specialties> GetSpecialties() { connection.Open(); MySqlCommand cmd = new MySqlCommand("SELECT * FROM `Specialties`", connection); var reader = cmd.ExecuteReader(); while (reader.Read()) { ListOfSpecialties.Add(new Specialties() { Id = Convert.ToInt32(reader["Id"]), Name = reader["Name"].ToString(), Faculty = reader["Faculty"].ToString(), FreePlaces = Convert.ToInt32(reader["FreePlaces"]), PayPlaces = Convert.ToInt32(reader["PayPlaces"]), StartNumberOfPointsInPastYear = Convert.ToInt32(reader["StartNumberOfPointsInPastYear"]), Price = Convert.ToInt32(reader["Price"]), Duration = Convert.ToInt32(reader["Duration"]), Qualification = reader["Qualification"].ToString(), Testing = reader["Testing"].ToString(), }); } connection.Close(); return(ListOfSpecialties); }
public List <Specialties> GetExtendedSpecialties() { connection.Open(); MySqlCommand cmd = new MySqlCommand("SELECT Specialties.Id, Specialties.Name, Faculties.Id as 'FacultyId', Faculties.Name as 'FacultyName', Specialties.FreePlaces, Specialties.PayPlaces," + " Specialties.StartNumberOfPointsInPastYear, Specialties.Price, Specialties.Duration, Specialties.Testing, Qualification.Name as 'QualifName', Profiles.Id as 'ProfileId'," + " Profiles.SpecialityId as 'IdOfSpeciality', Profiles.Name as 'ProfileName' " + " FROM `Specialties` INNER JOIN Faculties on Faculties.Id = Specialties.Faculty" + " INNER JOIN Profiles on Profiles.SpecialityId = Specialties.Id" + " INNER JOIN Qualification on Qualification.Id = Specialties.Qualification", connection); var reader = cmd.ExecuteReader(); while (reader.Read()) { bool isExist = false; foreach (var element in ListOfSpecialties) { if (element.Id == Convert.ToInt32(reader["Id"])) { isExist = true; } else { isExist = false; } } if (!isExist) { Specialties oneOfSpecialities = new Specialties() { Id = Convert.ToInt32(reader["Id"]), Name = reader["Name"].ToString(), Faculty = reader["FacultyName"].ToString(), FreePlaces = Convert.ToInt32(reader["FreePlaces"]), PayPlaces = Convert.ToInt32(reader["PayPlaces"]), StartNumberOfPointsInPastYear = Convert.ToInt32(reader["StartNumberOfPointsInPastYear"]), Price = Convert.ToInt32(reader["Price"]), Duration = Convert.ToInt32(reader["Duration"]), Qualification = reader["QualifName"].ToString(), Testing = reader["Testing"].ToString() }; ListOfSpecialties.Add(oneOfSpecialities); } foreach (var element in ListOfSpecialties) { if (element.Id == Convert.ToInt32(reader["IdOfSpeciality"])) { element.ListOfProfiles.Add(new Profiles() { Id = Convert.ToInt32(reader["ProfileId"]), Name = reader["ProfileName"].ToString() }); } } } connection.Close(); return(ListOfSpecialties); }