Esempio n. 1
0
        public async Task <IActionResult> CreateRecord(RecordCreateDTO recordCreateDTO)
        {
            if (!ModelState.IsValid)
            {
                return(View(recordCreateDTO));
            }

            try
            {
                string currentUserName = HttpContext.User.Identity.Name;

                User user = await _userManager.FindByNameAsync(currentUserName);

                byte[] ivKey = _aesCryptoProvider.GenerateIV();

                recordCreateDTO.Created  = DateTime.Now;
                recordCreateDTO.Modified = DateTime.Now;
                recordCreateDTO.IvKey    = ivKey;
                recordCreateDTO.UserId   = user.Id;

                Record record = _mapper.Map <Record>(recordCreateDTO);

                record.Text = _aesCryptoProvider.EncryptValue(recordCreateDTO.Content, user.CryptoKey, ivKey);

                Record newRecord = await _recordService.CreateAsync(record);

                if (recordCreateDTO.NewFiles != null)
                {
                    List <UploadedFile> uploadedFiles =
                        AddFiles(recordCreateDTO.NewFiles, newRecord.Id, currentUserName);

                    foreach (var file in uploadedFiles)
                    {
                        await _uploadedFileService.CreateAsync(file);
                    }
                }

                return(RedirectToAction("Index", "Home"));
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError("", ex.Message);
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
            }

            return(View(recordCreateDTO));
        }
        public ActionResult <RecordReadDTO> CreateRecord(RecordCreateDTO createDto)
        {
            Record        record;
            RecordReadDTO recordReadDTO;

            record = _mapper.Map <Record>(createDto);
            _repo.CreateRecord(record);
            _repo.SaveChanges();

            recordReadDTO = _mapper.Map <RecordReadDTO>(record);

            // return Ok(recordReadDTO);
            return(CreatedAtRoute(nameof(GetRecordById), new { recordReadDTO.Id }, recordReadDTO)); //wtf is this?
        }
Esempio n. 3
0
        public ActionResult <Record> CreateRecord(RecordCreateDTO record)
        {
            Record _record = new Record
            {
                Age      = record.Age,
                House    = record.House.ToString(),
                Id       = record.Id,
                LastName = record.LastName,
                Name     = record.Name
            };

            _repository.CreateRecord(_record);
            _repository.SaveChanges();
            return(Ok("registro creado con exito"));
        }