Steps to reproduce
using (var connection = new NpgsqlConnection(root.GetConnectionString("SqlConnection")))
{
connection.Open();
var cmd = connection.CreateCommand();
cmd.CommandText = @"
CREATE TABLE IF NOT EXISTS public.boxTable
(
id serial NOT NULL,
value box NOT NULL,
CONSTRAINT boxTable_pkey PRIMARY KEY (id)
);
";
cmd.ExecuteNonQuery();
cmd.CommandText = @"
INSERT INTO public.boxTable
(value)
VALUES
($1)
";
var box = new NpgsqlBox(
upperRight: new NpgsqlPoint(0.1d, 0.5d),
lowerLeft: new NpgsqlPoint(0.4d, 0.3d)
);
var parametr = new NpgsqlParameter<NpgsqlBox>();
parametr.TypedValue = box;
cmd.Parameters.Add(parametr);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
cmd.CommandText = @"
SELECT
value
FROM public.boxTable
";
using var reader = cmd.ExecuteReader();
while(reader.Read())
{
var readedBox = reader.GetFieldValue<NpgsqlBox>(0);
var isSame = readedBox == box;//false
//box is {(0.1,0.5),(0.4,0.3)}
//readedBox is {(0.4,0.5),(0.1,0.3)}
}
}
The issue
The Point values are mixed up.
isSame must be true, I think.
Looks like a bug, but I'm not sure.
Further technical details
Npgsql version: 7.0.4
PostgreSQL version: PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
Operating system:
Edition Windows 10 Pro
Version 22H2
OS build 19045.3086
Steps to reproduce
The issue
The Point values are mixed up.
isSamemust be true, I think.Looks like a bug, but I'm not sure.
Further technical details
Npgsql version: 7.0.4
PostgreSQL version: PostgreSQL 15.2, compiled by Visual C++ build 1914, 64-bit
Operating system:
Edition Windows 10 Pro
Version 22H2
OS build 19045.3086