示例#1
0
        public void UpdateGeocerca(geocercaSerial geocerca, List <puntosgeoSerial> puntosgeos)
        {
            using (var tr = db.Database.BeginTransaction())
            {
                try
                {
                    homeCtrl = new HomeController();
                    var    user = HttpContext.Current.User.Identity.Name;
                    string nit  = homeCtrl.obtenerNit(user);
                    geo              = db.Geocerca.Where(s => s.CodigoGEO == geocerca.CodGeocerca).FirstOrDefault();
                    geo.CodTipoGEO   = geocerca.CodTipoGEO;
                    geo.ColorLimite  = geocerca.ColorLimite;
                    geo.ColorRelleno = geocerca.ColorRelleno;
                    geo.Descripcion  = geocerca.Descripcion;
                    geo.NIT          = nit;
                    db.PuntosGeocerca.RemoveRange(db.PuntosGeocerca.Where(s => s.CodigoGEO == geo.CodigoGEO));
                    db.SaveChanges();

                    foreach (var item in puntosgeos)
                    {
                        pgeo = new WISETRACK.Datos.PuntosGeocerca
                        {
                            CodigoGEO = geo.CodigoGEO,
                            Latitud   = item.Latitud,
                            Longitud  = item.Longitud,
                            UsuaReg   = user,
                            FechaReg  = DateTime.Now,
                        };
                        db.PuntosGeocerca.Add(pgeo);
                        db.SaveChanges();
                    }
                    tr.Commit();
                }
                catch (Exception ex)
                {
                    tr.Rollback();
                    throw new Exception("Negocio AddGeocerca", ex);
                }
            }
        }