示例#1
0
        public void deleteCompra(int idCompra)
        {
            using (MyDBContext context = new MyDBContext())
            {
                var itemToRemove = context.Compras.Include("egreso").Include("presupuestos").Include("revisores").SingleOrDefault(x => x.idCompra == idCompra); //returns a single item.

                if (itemToRemove != null)
                {
                    foreach (DocumentoComercial doc in itemToRemove.presupuestos)
                    {
                        context.DocumentosComerciales.Remove(doc);
                    }
                    itemToRemove.revisores.Clear();
                    context.DocumentosComerciales.Remove(EgresoDAO.getInstancia().getDocComercial(itemToRemove.egreso.idEgreso));
                    context.DocumentosComerciales.Remove(itemToRemove.egreso.docsComerciales.SingleOrDefault(d => d.tipo != "Presupuesto"));
                    context.Egresos.Remove(itemToRemove.egreso); //Elimino la compra y el egreso asociado
                    context.Compras.Remove(itemToRemove);

                    context.SaveChanges();
                }
                else
                {
                    throw new Exception("La compra que quiere eliminar, no existe");
                }
            }
        }
示例#2
0
 public static EgresoDAO getInstancia()
 {
     if (instancia == null)
     {
         instancia = new EgresoDAO();
     }
     return(instancia);
 }