/// <summary>
        /// Permite modificar una entidad en la base de datos
        /// </summary>
        /// <param name="prestamos">La entidad que se desea modificar</param>
        public static bool Modificar(Prestamos prestamo)
        {
            bool     paso = false;
            decimal  balanceAntes;
            Contexto contexto = new Contexto();

            try
            {
                Personas persona = new Personas();
                persona          = PersonaBLL.Buscar(prestamo.PersonaId);
                balanceAntes     = prestamo.Balance;
                prestamo.Balance = prestamo.monto;
                persona.Balance -= balanceAntes;
                persona.Balance += prestamo.Balance;
                PersonaBLL.Guardar(persona);
                //marcar la entidad como modificada para que el contexto sepa como proceder
                contexto.Entry(prestamo).State = EntityState.Modified;
                paso = contexto.SaveChanges() > 0;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                contexto.Dispose();
            }
            return(paso);
        }
        /// <summary>
        /// Permite eliminar una entidad de la base de datos
        /// </summary>
        /// <param name="id">El Id de la entidad que se desea eliminar</param>
        public static bool Eliminar(int id)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            try
            {
                var      pres    = contexto.Prestamos.Find(id);
                Personas persona = new Personas();
                persona          = PersonaBLL.Buscar(pres.PersonaId);
                persona.Balance -= pres.Balance;
                PersonaBLL.Guardar(persona);

                //buscar la entidad que se desea eliminar
                var prestamo = contexto.Prestamos.Find(id);

                if (prestamo != null)
                {
                    contexto.Prestamos.Remove(prestamo);//remover la entidad
                    paso = contexto.SaveChanges() > 0;
                }
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                contexto.Dispose();
            }

            return(paso);
        }
        /// <summary>
        /// Permite insertar una entidad en la base de datos
        /// </summary>
        /// <param name="Prestamo">La entidad que se desea guardar</param>
        private static bool Insertar(Prestamos prestamos)
        {
            bool     paso     = false;
            Contexto contexto = new Contexto();

            try
            {
                Personas person = new Personas();
                person            = PersonaBLL.Buscar(prestamos.PersonaId);
                prestamos.Balance = prestamos.monto;
                person.Balance   += prestamos.Balance;
                PersonaBLL.Guardar(person);

                contexto.Prestamos.Add(prestamos);
                paso = contexto.SaveChanges() > 0;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                contexto.Dispose();
            }

            return(paso);
        }