public void createCapacidad(Capacidad c)
 {
     try
     {
         ctx.Database.Connection.Open();
         Entities.Recurso recurso = ctx.Recurso.Where(w => w.id == c.recurso.id).SingleOrDefault();
         var producto             = ctx.Producto.Where(w => w.id == c.idProducto).SingleOrDefault();
         var capacity             = new Entities.Capacidad(recurso, producto, c.valor, c.incrementoNivel);
         ctx.Capacidad.Add(capacity);
         ctx.SaveChanges();
         ctx.Database.Connection.Close();
     }
     catch (Exception e)
     {
         throw e;
     }
 }
        public void createRelJugadorDestacamento(RelJugadorDestacamento r)
        {
            CostoHandlerEF cosoH = new CostoHandlerEF(ctx);
            var            col   = ctx.RelJugadorMapa.Where(w => w.id == r.colonia.id).SingleOrDefault();
            var            des   = ctx.Destacamento.Where(w => w.id == r.destacamento.id).SingleOrDefault();

            List <Entities.Costo> cos = new List <Entities.Costo>();

            foreach (var item in r.destacamento.costos)
            {
                var rec  = ctx.Recurso.Where(w => w.id == item.recurso.id).SingleOrDefault();
                var prod = ctx.Producto.Where(w => w.id == item.idProducto).SingleOrDefault();
                var c    = new Entities.Costo(rec, prod, item.valor, item.incrementoNivel);
                cos.Add(c);
            }
            List <Entities.Capacidad> cap = new List <Entities.Capacidad>();

            foreach (var item in r.destacamento.capacidad)
            {
                var rec  = ctx.Recurso.Where(w => w.id == item.recurso.id).SingleOrDefault();
                var prod = ctx.Producto.Where(w => w.id == item.idProducto).SingleOrDefault();
                var c    = new Entities.Capacidad(rec, prod, item.valor, item.incrementoNivel);
                cap.Add(c);
            }

            var rje = new Entities.RelJugadorDestacamento(col, des, r.cantidad, r.finalizaConstruccion);

            try
            {
                ctx.RelJugadorDestacamento.Add(rje);

                ctx.SaveChanges();
            }
            catch (Exception e)
            {
                throw e;
            }
        }