/// <summary> /// haal alle account op /// </summary> /// <returns></returns> public List<Account> GetAlAccounts() { List<Account> accountlijst = new List<Account>(); try { using (OracleConnection conn = GetConnection()) { conn.Open(); string query = "select * from account"; using (OracleCommand cmd = new OracleCommand(query, conn)) { using (OracleDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { switch (reader["ACCOUNTTYPE"].ToString()) { case "redacteur": int accountId = Convert.ToInt32(reader["AccountNR"]); string accountnaam = reader["NAAM"].ToString(); MailAddress email = new MailAddress(reader["email"].ToString()); string ww = reader["Wachtwoord"].ToString(); bool mod = Convert.ToBoolean(reader["MODERATOR"]); Redacteur re = new Redacteur(accountId, accountnaam, ww, email, mod); accountlijst.Add(re); break; case "lid": accountId = Convert.ToInt32(reader["AccountNR"]); accountnaam = reader["NAAM"].ToString(); email = new MailAddress(reader["email"].ToString()); ww = reader["Wachtwoord"].ToString(); mod = Convert.ToBoolean(reader["MODERATOR"]); Gebruiker ge = new Gebruiker(accountId, accountnaam, ww, email, mod); accountlijst.Add(ge); break; } } } } } } catch (OracleException e) { Debug.WriteLine("Er kan geen verbinding worden gemaakt met de database. Error: " + e.Message); } return accountlijst; }
/// <summary> /// maakt een nieuwe account aan en schrijft hem naar de database /// </summary> /// <param name="username"></param> /// <param name="email"></param> /// <param name="wachwoord"></param> /// <returns></returns> public Gebruiker CreateAccount(string username, MailAddress email, string wachwoord) { Gebruiker account = new Gebruiker(1, username, wachwoord, email, false); try { using (OracleConnection conn = GetConnection()) { conn.Open(); string accounType = "lid"; string query = "INSERT INTO ACCOUNT (ACCOUNTNR,NAAM,EMAIL,WACHTWOORD,ACCOUNTTYPE)" + " VALUES(seq_Account.nextval,'" + username + "','" + email.Address + "','" + wachwoord + "','" + accounType + "')"; using (OracleCommand cmd = new OracleCommand(query, conn)) { cmd.ExecuteNonQuery(); } } } catch (OracleException e) { Debug.WriteLine("Er is een server error. Error: " + e.Message); } return account; }