Example #1
0
        protected override void Initialize(System.Web.Routing.RequestContext requestContext)
        {
            base.Initialize(requestContext);
            Debug.Assert(Request.IsAuthenticated);

            var user  = User.Identity.Name;
            var dCase = _ctx.DCases.FirstOrDefault(c => c.Owner == user && c.Name == StandardCases.MesoWind);

            if (dCase == null)
            {
                dCase = new DCase
                {
                    Id      = Guid.NewGuid(),
                    Name    = StandardCases.MesoWind,
                    Owner   = user,
                    Created = DateTime.UtcNow
                };
                // Model contains points from both databases by default
                var model = new VMesoWind();
                ItemsCount(model);

                var serializer = new XmlSerializer(typeof(VMesoWind));
                using (var writer = new StringWriter())
                {
                    serializer.Serialize(writer, model);
                    dCase.Model = writer.ToString();
                    writer.Close();
                }
                _ctx.DCases.AddObject(dCase);
                _ctx.SaveChanges();
            }
            base.Initialize(requestContext);
        }
Example #2
0
        private void PushModel(VMesoWind model)
        {
            var serializer = new XmlSerializer(typeof(VMesoWind));

            using (var writer = new StringWriter())
            {
                var dCase = _ctx.DCases.First(c => c.Owner == User.Identity.Name && c.Name == StandardCases.MesoWind);
                serializer.Serialize(writer, model);
                dCase.Model = writer.ToString();
                writer.Close();
                _ctx.SaveChanges();
            }
        }
Example #3
0
 private void ItemsCount(VMesoWind model)
 {
     if (model.UseSearchResults)
     {
         model.TotalCount = model.InterestingPoints.Count;
         model.MerraCount = model.InterestingPoints.Count(t => t.DatabaseId == (short)DbType.MERRA);
         model.FnlCount   = model.InterestingPoints.Count(t => t.DatabaseId == (short)DbType.FNL);
     }
     else
     {
         model.TotalCount = _ctx.VSmallMesoscaleTabFiles.Count();
         model.FnlCount   = _ctx.VSmallMesoscaleTabFiles.Count(t => t.DatabaseId == (int)DbType.FNL);
         model.MerraCount = _ctx.VSmallMesoscaleTabFiles.Count(t => t.DatabaseId == (int)DbType.MERRA);
     }
 }