public static void addMovimiento(movimiento_caja mc)
 {
     try
     {
         admEntities db = Datos.getDB();
         mc.periodo = DateTime.Parse("1/" + mc.fecha.Month + "/" + mc.fecha.Year);
         estado_caja ec = db.estado_caja.Where(x => x.dir_edificio == mc.dir_edificio && x.fecha == mc.periodo).SingleOrDefault();//Buscar estado caja y crear si no existe
         if (ec == null)
         {
             ec = new estado_caja();
             ec.dir_edificio = mc.dir_edificio;
             ec.fecha = mc.periodo;
             ec = agregarEstadoCaja(ec);
         }
         db.movimiento_caja.Add(mc);
         db.SaveChanges();
     }
     catch (Exception e)
     {
         Logger.Log.write(e.InnerException == null ? e.Message : e.InnerException.Message);
         throw e;
     }
 }
 private static estado_caja agregarEstadoCaja(estado_caja ec)
 {
     try {
         admEntities db = new admEntities();
         ec = db.estado_caja.Add(ec);
         db.SaveChanges();
         return ec;
     }
     catch (Exception e)
     {
         Logger.Log.write(e.InnerException == null ? e.Message : e.InnerException.Message);
         throw e;
     }
 }