// Čitanje iz baze podataka private void readFromDB() { newDrawingCanvas(); grafoviEntities gfv = new grafoviEntities(); foreach (var dbNode in gfv.cvor) { if (dbNode.username != username) { continue; } Node nodic = new Node(new Point((int)dbNode.posX, (int)dbNode.posY), Color.Black, dbNode.id); nodes.Add(nodic); ucCanvas.nodeNumber++; Platno.numberOfNodes++; } foreach (var node in nodes) { foreach (var x in gfv.konekcije) { if (x.startCvor == node.ID && x.username == username) { node.Connected.Add(x.endCvor); node.weights.Add(new KeyValuePair <int, double>(x.endCvor, x.tezina)); node.connectionColors.Add(new KeyValuePair <int, Color>(x.endCvor, Color.ForestGreen)); } } } }
private void writeToDB() { grafoviEntities gfv = new grafoviEntities(); // Pravimo novi čvor koji dodajemo u bazu foreach (Node node in nodes) { // Brišemo postojeće vrste u bazi // da ne bi ostali za sledeći put kada budemo učitavali iz baze cvor postojeci = gfv.cvor.Find(username, node.ID); foreach (var k in gfv.konekcije) { if (k.username == username) { gfv.konekcije.Remove(k); } } if (postojeci != null) { gfv.cvor.Remove(postojeci); } // Pravimo novi čvor i dodajemo ga u bazu cvor dbNode = new cvor(); dbNode.username = username; dbNode.id = node.ID; dbNode.posX = node.Position.X; dbNode.posY = node.Position.Y; gfv.cvor.Add(dbNode); // Čuvamo sve konekcije od datog čvora ka ostalima u bazu foreach (int idTo in node.Connected) { konekcije konekcija = new konekcije(); konekcija.username = username; konekcija.startCvor = node.ID; konekcija.endCvor = idTo; konekcija.tezina = node.weights.Find(x => x.Key == idTo).Value; gfv.konekcije.Add(konekcija); } } // Potvrđujemo promene u bazi gfv.SaveChanges(); }
public RegisterForm() { InitializeComponent(); ctx = new grafoviEntities(); }
public loginForm() { InitializeComponent(); ctx = new grafoviEntities(); }