public void TestFactoryPattern() { Varaus v1 = Varaus.Create(-2, "", -1, -1); if (v1 == null) { write("v1=null"); } else { write(v1.ToString()); } Varaus v2 = Varaus.Create(69, "", -1, -1); if (v2 == null) { write("v2=null"); } else { write(v2.ToString()); } Varaus v3 = Varaus.Create(69, "nimi1", -1, -1); if (v3 == null) { write("v3=null"); } else { write(v3.ToString()); } Varaus v4 = Varaus.Create(69, "nimi2", 420, -1); if (v4 == null) { write("v4=null"); } else { write(v4.ToString()); } Varaus v5 = Varaus.Create(69, "toimii", 420, 366); if (v5 == null) { write("v5=null"); } else { write(v5.ToString()); } }
//Lukee kaiken datan taulusta public List <Varaus> SelectAll(List <Varaus> varaukset) { sql = "Select * from mydb.Varaus;"; command = new SqlCommand(sql, cnn); dataReader = command.ExecuteReader(); while (dataReader.Read()) { int.TryParse(dataReader.GetValue(0).ToString(), out id); varaajanNimi = dataReader.GetValue(1).ToString(); int.TryParse(dataReader.GetValue(2).ToString(), out materiaaliId); int.TryParse(dataReader.GetValue(3).ToString(), out maara); Varaus v = Varaus.Create(id, varaajanNimi, materiaaliId, maara); varaukset.Add(v); } dataReader.Close(); return(varaukset); }
public void Run() { List <Materiaali> materiaalit = new List <Materiaali>(); //Lista materiaaleista List <Tilaus> tilaukset = new List <Tilaus>(); //Lista tilauksista List <Varaus> varaukset = new List <Varaus>(); SqlConnection cnn; //tietokantayhteys-olio, jaetaan tämä muualle DatabaseManager dm = new DatabaseManager(); //tietokannanhallinta-olio, mm. yhdistys kantaan cnn = dm.OpenConnection(); //yhdistetään kantaan if (cnn != null) { DatabaseMateriaali dmMat = new DatabaseMateriaali(cnn); //luodaan olio, jolla käsitellään materiaaleja tietokannassa materiaalit = dmMat.SelectAll(materiaalit); //haetaan kaikki materiaalit kannasta listaan DatabaseTilaus dmTil = new DatabaseTilaus(cnn); //luodaan olio, jolla käsitellään tilauksia tietokannassa tilaukset = dmTil.SelectAll(tilaukset); //haetaan kaikki tilaukset kannasta listaan DatabaseVaraus dmVar = new DatabaseVaraus(cnn); varaukset = dmVar.SelectAll(varaukset); //Kokeillaan nyt lisätä kantaan, muokata kantaa ja päivittää listaa Materiaali m = Materiaali.Create(-1, 2, 3, 4); Materiaali mU = Materiaali.Create(5, 6, 7, 8); dmMat.InsertInto(m); dmMat.Update(mU); materiaalit = new List <Materiaali>(); materiaalit = dmMat.SelectAll(materiaalit); //päivitetään lista Tilaus t = Tilaus.Create(-1, "Tilaaja1", 666, materiaalit[materiaalit.Count - 1].Id); Tilaus tU = Tilaus.Create(5, "Tilaaja4299", 1337, materiaalit[3].Id); dmTil.InsertInto(t); dmTil.Update(tU); tilaukset = new List <Tilaus>(); tilaukset = dmTil.SelectAll(tilaukset); Varaus v = Varaus.Create(-1, "Varaaja1", materiaalit[materiaalit.Count - 1].Id, 69); Varaus vU = Varaus.Create(6, "Varaaja6069", materiaalit[4].Id, 21); dmVar.InsertInto(v); dmVar.Update(vU); varaukset = new List <Varaus>(); varaukset = dmVar.SelectAll(varaukset); write(path, materiaalit, tilaukset, varaukset);//lopputilanne dm.CloseConnection(); } }