//Metode til at søge på registrerede vikarere public List <Profil> SearchByName(string navn) { try { List <Profil> profiler = new List <Profil>(); //vores connectionstring hentes fra Web.config SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Entities"].ConnectionString); connection.Open(); //Hvis ikke man har udfyldt søgefeltet, hentes de første 100 profiler i databasen //get profil er SQL querien til at hente profiler string getprofil; if (navn.Length <= 0) { getprofil = "SELECT TOP 100 * FROM Profil"; } else { //Vi henter alle profiler med matchende navn eller efternavn //Ves brug af like-operatoren i SQL, henter vi profiler, der indeholder navnet der søges efter getprofil = "SELECT * FROM Profil WHERE Navn='" + navn + "' OR Efternavn='" + navn + "' OR Navn LIKE '%" + navn + "%' OR Efternavn LIKE '%" + navn + "%'"; } SqlCommand cmd = new SqlCommand(getprofil, connection); using (SqlDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { var profil = new Profil(); profil.Bruger_Id = reader.GetInt32(0); profil.Navn = reader.GetString(1); profil.Efternavn = reader.GetString(2); if (!Convert.IsDBNull(reader[3])) { profil.Alder = reader.GetInt32(3); } if (!Convert.IsDBNull(reader[4])) { profil.Køn = reader.GetInt32(4); } if (!Convert.IsDBNull(reader[5])) { profil.Område = reader.GetInt32(5); } if (!Convert.IsDBNull(reader[6])) { profil.Bio = reader.GetString(6); } if (!Convert.IsDBNull(reader[7])) { profil.Profilbillede = (byte[])reader[7]; } if (!Convert.IsDBNull(reader[8])) { profil.Tlf = reader.GetString(8); } profil.Email = reader.GetString(9); profiler.Add(profil); } } System.Diagnostics.Debug.WriteLine("GetProfil Query Succesfull"); connection.Close(); return(profiler); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine("ERROR EXCEPTION:" + ex); return(null); } }
//Metode til at få fat på alle informationer om en profil på baggrund af en email public Profil GetProfil(string email) { try { //Her laver vi et objekt af typen Profil, som svarer til samme type som profil-tablet i vores database var profil = new Profil(); //vores connectionstring hentes fra Web.config SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Entities"].ConnectionString); connection.Open(); //her er vores query, som selecter alt fra profil-tablet, hvor emailen passer. string getprofil = "SELECT * FROM Profil WHERE Email='" + email + "'"; SqlCommand cmd = new SqlCommand(getprofil, connection); //herefter bruger vi SQLDataReader til at indsætte alle dataene fra queryen ind i objektet fra før. using (SqlDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { profil.Bruger_Id = reader.GetInt32(0); profil.Navn = reader.GetString(1); profil.Efternavn = reader.GetString(2); //Ved nogle af dataene tjekker vi om de er "null" inden vi forsøger at lave dem om til strings eller ints, //da GetInt32 og GetString fejler, hvis de får "null" som input, som bare betyder at felterne er tomme. if (!Convert.IsDBNull(reader[3])) { profil.Alder = reader.GetInt32(3); } if (!Convert.IsDBNull(reader[4])) { profil.Køn = reader.GetInt32(4); } if (!Convert.IsDBNull(reader[5])) { profil.Område = reader.GetInt32(5); } if (!Convert.IsDBNull(reader[6])) { profil.Bio = reader.GetString(6); } if (!Convert.IsDBNull(reader[7])) { profil.Profilbillede = (byte[])reader[7]; } if (!Convert.IsDBNull(reader[8])) { profil.Tlf = reader.GetString(8); } profil.Email = reader.GetString(9); profil.Kodeord = "*****"; } } System.Diagnostics.Debug.WriteLine("GetProfil Query Succesfull"); connection.Close(); return(profil); } catch (Exception ex) { //hvis der er en fejl, bliver den vist i konsollen System.Diagnostics.Debug.WriteLine("ERROR EXCEPTION:" + ex); return(null); } }