public void addBarriers(Barrier[] barriers) { foreach (Barrier barrier in barriers) { addBarrier(barrier); } }
public void addBarrier(Barrier barrier) { String query = "INSERT INTO barriers(guid, x, y, angle)" + " VALUES (:guid, :x, :y, :angle)"; NpgsqlCommand command = new NpgsqlCommand(query, connection); command.Parameters.Add(new NpgsqlParameter("guid", barrier.guid)); command.Parameters.Add(new NpgsqlParameter("x", barrier.x)); command.Parameters.Add(new NpgsqlParameter("y", barrier.y)); command.Parameters.Add(new NpgsqlParameter("angle", barrier.angle)); command.ExecuteNonQuery(); }
public List<Barrier> readAllBarriers() { NpgsqlCommand command = new NpgsqlCommand("SELECT * FROM barriers", connection); NpgsqlDataReader reader = command.ExecuteReader(); List<Barrier> barriers = new List<Barrier>(); // read the routes themselves while (reader.Read()) { String guid = (reader[0] == DBNull.Value) ? null : (String)reader[0]; double x = (double)reader[1]; double y = (double)reader[2]; double angle = (double)reader[3]; Barrier barrier = new Barrier(guid, x, y, angle); barriers.Add(barrier); } reader.Close(); return barriers; }
static void addBarriers(String connectionParams) { NpgsqlConnection connection = new NpgsqlConnection(connectionParams); connection.Open(); NpgsqlTransaction transaction = connection.BeginTransaction(); try { BarriersDB db = new BarriersDB(connection); Barrier b1 = new Barrier(Util.CreateGuid(), 34.8514759540558, 32.0996901152282, 0); Barrier b2 = new Barrier(Util.CreateGuid(), 34.8514759540558, 32.1002763321138, 0); Barrier b3 = new Barrier(Util.CreateGuid(), 34.8511058092117, 32.0973406656135, 0); Barrier b4 = new Barrier(Util.CreateGuid(), 34.8504620790482, 32.0961000227717, 0); db.addBarriers(new Barrier[] { b1, b2, b3, b4 }); transaction.Commit(); } catch (Exception exception) { try { transaction.Rollback(); } catch (Exception rollbackException) { Console.WriteLine("Rollback failed :("); } } connection.Close(); }