public bool checkInstrumentGruppeObject(InstrumentGruppe grp) { //Tjekker først om navn er null eller tom if (!string.IsNullOrEmpty(grp.Navn)) { //tkekker om navn er et andet tegn end bogstav eller tal if (CheckSpecificSymbols(grp.Navn)) { return(false); } } else { return(false); } //tjekker om beskrivelse er null eller tom if (!string.IsNullOrEmpty(grp.Beskrivelse)) { //tkekker om navn er et andet tegn end bogstav eller tal if (CheckSpecificSymbols(grp.Beskrivelse)) { return(false); } } else { return(false); } return(true); }
public async Task <bool> OpretInstrumentGruppeAsync(InstrumentGruppe gruppe) { await Task.Delay(5000); GeneralValidator val = new GeneralValidator(); //Tjekker om metoden har modtaget et gyldigt instrumentgruppe objekt if (val.checkInstrumentGruppeObject(gruppe)) { //kalder OpretInstrumentAsync metoden på datahandler objektet med instrument som argument og returnere hvorvidt oprettelsen har været successfuld return(await dataHandler.OpretInstrumentGruppeAsync(gruppe)); } //Har metoden ikke modtaget et gyldigt instrument returnere den false return(false); }
public async Task <InstrumentGruppe> HentInstrumentGruppeAsync(int id) { //Instanciere en ny instrumentgruppe hvis properties skal sættes til at være lig data hentet fra database InstrumentGruppe grp = new InstrumentGruppe(); //Instanciere en sqlcommand som tager en query der vælger alle data fra InstrumenterGruppe på basis af det modtagne Id. Derudover anvender den den conn sqlconnection variablen som connection SqlCommand cmd = new SqlCommand("SELECT * FROM InstrumentGrupper WHERE Id = @Id;", conn); cmd.Parameters.AddWithValue("@Id", id); //I tilfælde af der opstår fejl under oprettelse af forbindelse til database sættes kode associeret med forbindelsen i en trycatch try { //Åbner forbindelse til databasen await conn.OpenAsync(); //Sætter en sqldatareader variabel der modtager en sqldatareader med executereaderasync metoden på sqlcommand objektet. SqlDataReader reader = await cmd.ExecuteReaderAsync(); //Sætter readeren til at læse. Læser den succesfuldt returnere den true. Derfor sættes den i en condition //i tilfælde af læsning ikke lykkedes. Udenfor en vil den bare læse den første række der falder indenfor de kriterier der er sat i select query if (await reader.ReadAsync()) { //Sætter properties ud fra den række der er læst grp.Id = (int)reader["Id"]; grp.Navn = (string)reader["Navn"]; grp.Navn = (string)reader["Beskrivelse"]; } else { grp = null; } //lukker læsning og connection reader.Close(); conn.Close(); } catch { //hvis der er opstået en fejl under ovenstående eksekvering sættes objektet til at være null grp = null; } //returnere objektet return(grp); }
public async Task <bool> OpretInstrumentGruppeAsync(InstrumentGruppe gruppe) { //Sætter returvariabel der fortæller om metode er eksekveret uden problemer, til som udgangspunkt at være true bool executeSuccess; string query = "INSERT INTO InstrumentGrupper(Navn, Beskrivelse) VALUES (@Navn, @Beskrivelse);"; //Instanciere et SqlCommand objekt som anvender query samt connection variabelgfdsgfsd SqlCommand cmd = new SqlCommand(query, conn); //værdier associeres med parametre for den ovenstående query cmd.Parameters.AddWithValue("@Navn", gruppe.Navn); cmd.Parameters.AddWithValue("@Beskrivelse", gruppe.Beskrivelse); try { //åbner forbindelse til databasen await conn.OpenAsync(); //Eksekvere SQL op imod databasen if (await cmd.ExecuteNonQueryAsync() == 1) { executeSuccess = true; } else { executeSuccess = false; } //Lukker forbindelsne conn.Close(); } catch { //Er der opstået en fejl er executeSuccess false executeSuccess = false; } //returnere hvorvidt metoden er kørt successfuldt eller ej return(executeSuccess); }