Esempio n. 1
0
        //Metodo post para agregar un registro
        protected async Task <ActionResult> Post <TCreacion, TEntidad, TLectura>(TCreacion creacionDTO, string nombreRuta) where TEntidad : class, IId
        {
            try {
                var entidad = mapper.Map <TEntidad>(creacionDTO);
                context.Add(entidad);
                await context.SaveChangesAsync();

                var dtoLectura = mapper.Map <TLectura>(entidad);

                return(new CreatedAtRouteResult(nombreRuta, new { id = entidad.Id }, dtoLectura));
            } catch (Exception e) {
                return(Content(e.ToString()));
            }
        }
Esempio n. 2
0
        public async Task <ActionResult> Patch(string cedula, [FromBody] JsonPatchDocument <Persona> patchDoc)
        {
            if (patchDoc == null)
            {
                return(BadRequest());
            }

            var personaEdit = await context.Personas.FirstOrDefaultAsync(x => x.Cedula == cedula);

            if (personaEdit == null)
            {
                return(NotFound());
            }

            patchDoc.ApplyTo(personaEdit, ModelState);

            var isValid = TryValidateModel(personaEdit);

            if (!isValid)
            {
                return(BadRequest(ModelState));
            }

            await context.SaveChangesAsync();

            return(NoContent());
        }