Exemplo n.º 1
0
        /// <summary>
        /// Inserts a new map polygon into the database.
        /// </summary>
        /// <param name="item">Object containing porperties to be inserted into the database.</param>
        public static async Task InsertMapPolygonItemAsync(MapPolygonItem item)
        {
            using (var cnn = await GetDbConnectionAsync())
            {
                cnn.Open();

                item.Id = (int)await cnn.ExecuteScalarAsync <long>(
                    @"INSERT INTO MapElement (Name, Type, StrokeColor, FillColor, Layer_Id)
                    VALUES (@Name, @Type, @StrokeColor, @FillColor, @Layer_Id);
                    SELECT last_insert_rowid();",
                    new
                {
                    item.Name,
                    Type        = "MapPolygonItem",
                    StrokeColor = StringColorConverter.ArgbColorToString(item.StrokeColor),
                    FillColor   = StringColorConverter.ArgbColorToString(item.FillColor),
                    Layer_Id    = item.ParentLayer.Id
                });

                var list = from g in item.Path
                           select new
                {
                    g.Altitude,
                    g.Latitude,
                    g.Longitude,
                    MapElement_Id = item.Id
                };

                await cnn.ExecuteAsync(
                    @"INSERT INTO Geoposition (Altitude, Latitude, Longitude, MapElement_Id)
                    VALUES (@Altitude, @Latitude, @Longitude, @MapElement_Id)",
                    list);
            }
        }
Exemplo n.º 2
0
        public void ArgbColorToString_InputWhite_ReturnFFFFFFFF()
        {
            var input  = Color.FromArgb(255, 255, 255, 255);
            var result = StringColorConverter.ArgbColorToString(input);
            var expect = "FFFFFFFF";

            Assert.AreEqual(expect, result, $@"Returned color not as expected.
                                            Expected: {expect},
                                            Actual: {result}");
        }