示例#1
0
        public async Task <IActionResult> Post([FromBody] DtoCertificate dto)
        {
            var entity = Mapper.Map <Certificate>(dto);

            var allowed = await _securityManager.HasPermissionAsync(entity, AccessOperation.CREATE);

            if (!allowed)
            {
                return(Forbid());
            }

            _context.Certificates.Add(entity);

            await _context
            .SaveChangesAsync()
            .ConfigureAwait(false);

            return(Ok(entity.Id));
        }
示例#2
0
        public async Task <IActionResult> Update([FromBody] DtoCertificate dto, [FromRoute] long id)
        {
            var template = Mapper.Map <Certificate>(dto);

            template.Id = id;

            var allowed = await _securityManager.HasPermissionAsync(template, AccessOperation.UPDATE);

            if (!allowed)
            {
                return(Forbid());
            }

            await _context.Certificates
            .Where(x => x.Id == id)
            .UpdateFromQueryAsync(_ => template)
            .ConfigureAwait(false);

            return(Ok(id));
        }