Exemple #1
0
 public void UpdateDatabase()
 {
     using (var context = new IsraelHikingDbContext())
     {
         var list = context.SiteUrls.ToList();
         foreach (var siteUrl in list)
         {
             //var dataContainerOld = JsonConvert.DeserializeObject<DataContainerOld>(siteUrl.JsonData);
             var dataContainerOld = JsonConvert.DeserializeObject <DataContainer>(siteUrl.JsonData);
             if (dataContainerOld.routes.Count == 0)// && dataContainerOld.markers.Count == 0)
             {
                 continue;
             }
             var dataContainerNew = new DataContainer
             {
                 baseLayer = dataContainerOld.baseLayer,
                 northEast = dataContainerOld.northEast,
                 southWest = dataContainerOld.southWest,
                 overlays  = dataContainerOld.overlays,
                 routes    = dataContainerOld.routes.Select(old => new RouteData
                 {
                     name     = old.name,
                     segments = old.segments
                 }).ToList()
             };
             //if (dataContainerOld.markers.Any())
             //{
             //    if (!dataContainerNew.routes.Any())
             //    {
             //        dataContainerNew.routes.Add(new RouteData { name = "Markers" });
             //    }
             //    dataContainerNew.routes.First().markers = dataContainerOld.markers;
             //}
             var jsonData = JsonConvert.SerializeObject(dataContainerNew, Formatting.None, new JsonSerializerSettings {
                 NullValueHandling = NullValueHandling.Ignore
             });
             siteUrl.JsonData             = jsonData;
             context.Entry(siteUrl).State = EntityState.Modified;
         }
         context.SaveChanges();
     }
 }
Exemple #2
0
        public void NoDatabaseFile_CreateDatabase_DatabaseShouldBeCreated()
        {
            if (File.Exists(TEST_SQLITE_FILE_NAME))
            {
                File.Delete(TEST_SQLITE_FILE_NAME);
            }

            using (var context = new IsraelHikingDbContext())
            {
                var list = context.SiteUrls.ToList();
                Assert.AreEqual(0, list.Count);
                Assert.IsTrue(File.Exists(TEST_SQLITE_FILE_NAME));
            }

            var id = "42";

            using (var context = new IsraelHikingDbContext())
            {
                context.SiteUrls.Add(new SiteUrl {
                    Id = id
                });
                context.SaveChanges();
            }

            using (var context = new IsraelHikingDbContext())
            {
                Assert.AreEqual(1, context.SiteUrls.Count());
            }
            using (var context = new IsraelHikingDbContext())
            {
                var siteUrlToUpdate = new SiteUrl {
                    Id = id, Title = "title"
                };
                context.Entry(siteUrlToUpdate).State = EntityState.Modified;
                context.SaveChanges();
            }

            using (var context = new IsraelHikingDbContext())
            {
                Assert.IsNotNull(context.SiteUrls.FirstOrDefault(x => x.Title == "title"));
            }
        }