示例#1
0
        public async Task Update(Rama rama)
        {
            try
            {
                var _model = await _db.Rama.FirstOrDefaultAsync(e => e.RamaId == rama.RamaId);

                if (_model != null)
                {
                    if (!rama.ExisteEn(_db.Rama.Where(e => e.RamaId != rama.RamaId).Select(e => e.Descripcion).ToList()))
                    {
                        _db.Entry(_model).CurrentValues.SetValues(rama);
                        await _db.SaveChangesAsync();
                    }
                    else
                    {
                        throw new ApplicationException("Ya existe un registro con ese nombre.");
                    }
                }
            }
            catch (ApplicationException e)
            {
                throw new ApplicationException(e.Message, e);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message, e);
            }
        }
示例#2
0
        private static void PintarUnArbol()
        {
            var troncoArbol = new Rama();

            var rama1 = new Rama();

            rama1.Brotar(new Hoja());

            var rama2 = new Rama();

            rama1.Brotar(new Hoja());
            rama1.Brotar(new Hoja());

            var rama3 = new Rama();

            rama3.Brotar(new Hoja());
            rama3.Brotar(new Hoja());
            rama3.Brotar(new Hoja());

            troncoArbol.Brotar(rama1);
            troncoArbol.Brotar(rama2);
            troncoArbol.Brotar(rama3);

            troncoArbol.Pintar(1);
        }
示例#3
0
 public IActionResult Delete(Rama entity)
 {
     Log.Info("Delete method in Rama was invoked");
     try
     {
         context.Ramas.Remove(entity);
         context.SaveChanges();
         return(Ok());
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
示例#4
0
 public IActionResult Update(Rama entity)
 {
     Log.Info("Put method in Rama was invoked");
     try
     {
         context.Entry(entity).State = EntityState.Modified;
         context.SaveChanges();
         return(Ok());
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
示例#5
0
        public IActionResult Create([FromBody] Rama data)
        {
            Log.Info("Post method in Rama was invoked");
            try
            {
                context.Ramas.Add(data);
                context.SaveChanges();

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
示例#6
0
 public async Task Create(Rama rama)
 {
     try
     {
         if (!rama.ExisteEn(_db.Rama.Where(e => e.RamaId != rama.RamaId).Select(e => e.Descripcion).ToList()))
         {
             _db.Rama.Add(rama);
             await _db.SaveChangesAsync();
         }
         else
         {
             throw new ApplicationException("Ya existe un registro con ese nombre.");
         }
     }
     catch (ApplicationException e)
     {
         throw new ApplicationException(e.Message, e);
     }
     catch (Exception e)
     {
         throw new Exception(e.Message, e);
     }
 }
示例#7
0
        public async Task <IHttpActionResult> Create(Rama rama)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                log.Info(new MDCSet(this.ControllerContext.RouteData));
                await _ramaRepo.Create(rama);

                return(Ok("Registro creado exitosamente."));
            }
            catch (ApplicationException e)
            {
                return(BadRequest(e.Message));
            }
            catch (Exception e)
            {
                log.Error(new MDCSet(this.ControllerContext.RouteData), e);
                return(InternalServerError(e));
            }
        }