public Docente(string nome, string cognome, string username, string password, DateTime dataNascita, Sede sede) : this(nome, cognome, username, password, dataNascita, sede, new List <Materia>(), new List <Classe>()) { }
public Studente(string nome, string cognome, string username, string password, DateTime dataNascita, Sede sede, Classe classe) : base(nome, cognome, username, password, dataNascita, sede) { if (classe.Sede != sede) { throw new ArgumentException("la classe inserita non appartiene alla sede dello studente"); } voti = new List <Voto>(); this.classe = classe; using (NpgsqlConnection conn = new NpgsqlConnection(Risorse.StringaDiConnessione)) { conn.Open(); using (NpgsqlCommand command = new NpgsqlCommand("Insert into studenti (idstudente, idclasse) values (@stu, @clas)", conn)) { command.Parameters.AddWithValue("stu", matricola); command.Parameters.AddWithValue("clas", classe.Id); command.ExecuteNonQuery(); } } classe.Studenti.Add(this); }
public Docente(string nome, string cognome, string username, string password, DateTime dataNascita, Sede sede, List <Materia> materie, List <Classe> classi) : base(nome, cognome, username, password, dataNascita, sede) { this.materie = materie; this.classi = classi; sede.Docenti.Add(this); using (NpgsqlConnection conn = new NpgsqlConnection(Risorse.StringaDiConnessione)) { conn.Open(); using (NpgsqlCommand command = new NpgsqlCommand("Insert into Docenti (iddocente) values(@id)", conn)) { command.Parameters.AddWithValue("id", matricola); command.ExecuteNonQuery(); } /* * docentiTableAdapter adapter = new docentiTableAdapter(); * * adapter.Insert(matricola); * * CompetenzeTableAdapter compAdapter = new CompetenzeTableAdapter(); * insegnamentiTableAdapter insAdapter = new insegnamentiTableAdapter(); * */ using (NpgsqlCommand inserimentoClassi = new NpgsqlCommand("Insert into Insegnamenti (iddocente, idclasse) values (@doc, @clas)", conn)) { foreach (Classe classe in classi) { inserimentoClassi.Parameters.Clear(); inserimentoClassi.Parameters.AddWithValue("doc", matricola); inserimentoClassi.Parameters.AddWithValue("clas", classe.Id); inserimentoClassi.Prepare(); inserimentoClassi.ExecuteNonQuery(); classe.Docenti.Add(this); } } this.classi = classi; using (NpgsqlCommand competenze = new NpgsqlCommand("Insert into Competenze (iddocente, nomemateria) values (@doc, @mat)", conn)) { foreach (Materia materia in materie) { materia.Docenti.Add(this); competenze.Parameters.Clear(); competenze.Parameters.AddWithValue("doc", matricola); competenze.Parameters.AddWithValue("mat", materia.Nome); competenze.Prepare(); competenze.ExecuteNonQuery(); } } this.materie = materie; } }
public Classe(int anno, string sezione, Sede sede) : this(anno, sezione, sede, new List <Docente>(), new List <Studente>()) { }