Esempio n. 1
0
        public FigureData LoadPolygon(string name)
        {
            var connection = PostgresConnection.GetInstance();

            try
            {
                connection.Open();

                string sql = "select type, x_coords, y_coords from polygons where name=@name";

                var command = new NpgsqlCommand(sql, connection);
                command.Parameters.AddWithValue("@name", name);

                var dataReader = command.ExecuteReader();

                if (!dataReader.Read())
                {
                    throw new DataException("Figure does not exist");
                }

                FigureData figureData = new FigureData();
                figureData.PolygonType = (string)dataReader[0];
                figureData.Coords      = FigureData.GetCoordsFromArrays((double[])dataReader[1], (double[])dataReader[2]);

                return(figureData);
            }
            catch (Exception e)
            {
                throw;
            }
            finally
            {
                connection.Close();
            }
        }