Пример #1
0
        public void TestSTAsHEXEWKB()
        {
            using (var db = new PostGisTestDataConnection(TestDatabaseConnectionString))
            {
                var g1 = db.Select(() => GeometryInput.STGeometryFromText("POLYGON((0 0,0 1,1 1,1 0,0 0))", 4326));

                var hexewkb = db.Select(() => GeometryOutput.STAsHEXEWKB(g1));
                Assert.AreEqual("0103000020E61000000100000005000000000000000000000000000000000000000000000000000000000000000000F03F000000000000F03F000000000000F03F000000000000F03F000000000000000000000000000000000000000000000000", hexewkb);

                Assert.IsNull(db.Select(() => GeometryOutput.STAsHEXEWKB(null)));
            }
        }
        public void TestSTAsHEXEWKB()
        {
            using (var db = new PostGisTestDataConnection(TestDatabaseConnectionString))
            {
                const string Wkt     = "POLYGON((0 0,0 1,1 1,1 0,0 0))";
                const string HexEwkb = "0103000020E61000000100000005000000000000000000000000000000000000000000000000000000000000000000F03F000000000000F03F000000000000F03F000000000000F03F000000000000000000000000000000000000000000000000";
                var          g1      = db.Select(() => GeometryInput.STGeometryFromText(Wkt, 4326));

                var hexewkb = db.Select(() => GeometryOutput.STAsHEXEWKB(g1));
                Assert.AreEqual(HexEwkb, hexewkb);

                Assert.AreEqual(HexEwkb, db.Select(() => GeometryOutput.STAsHEXEWKB("SRID=4326;" + Wkt)));

                Assert.AreEqual(
                    "000000000140000000000000004010000000000000",
                    db.Select(() => GeometryOutput.STAsHEXEWKB(GeometryConstructors.STMakePoint(2, 4), EndiannessEncoding.BigEndian)));

                Assert.AreEqual(
                    "000000000140000000000000004010000000000000",
                    db.Select(() => GeometryOutput.STAsHEXEWKB("POINT(2.0 4.0)", EndiannessEncoding.BigEndian)));

                Assert.IsNull(db.Select(() => GeometryOutput.STAsHEXEWKB((NTSG)null)));
            }
        }