Exemple #1
0
        public async Task <IActionResult> Add(SpaceshipViewModel model)
        {
            var dto = new SpaceshipDto
            {
                Id         = model.Id,
                CrewSize   = model.CrewSize,
                Armament   = model.Armament,
                Role       = model.Role,
                CreatedAt  = model.CreatedAt,
                ModifiedAt = model.ModifiedAt,
                Files      = model.Files,
                Image      = model.Image.Select(x => new FileToDatabaseDto
                {
                    Id          = x.ImageId,
                    ImageData   = x.ImageData,
                    ImageTitle  = x.ImageTitle,
                    SpaceshipId = x.SpaceshipId
                }).ToArray()
            };

            var result = await _spaceshipService.Add(dto);

            if (result == null)
            {
                return(RedirectToAction(nameof(Index)));
            }

            return(RedirectToAction("index", model));
        }
Exemple #2
0
        public async Task <Spaceship> Update(SpaceshipDto dto)
        {
            Spaceship      spaceship = new Spaceship();
            FileToDatabase file      = new FileToDatabase();

            spaceship.Id         = dto.Id;
            spaceship.CrewSize   = dto.CrewSize;
            spaceship.Armament   = dto.Armament;
            spaceship.Role       = dto.Role;
            spaceship.CreatedAt  = dto.CreatedAt;
            spaceship.ModifiedAt = DateTime.Now;

            if (dto.Files != null)
            {
                file.ImageData = UploadFile(dto, spaceship);
            }

            _context.Spaceship.Update(spaceship);
            await _context.SaveChangesAsync();

            return(spaceship);
        }
Exemple #3
0
        public byte[] UploadFile(SpaceshipDto dto, Spaceship spaceship)
        {
            if (dto.Files != null && dto.Files.Count > 0)
            {
                foreach (var photo in dto.Files)
                {
                    using (var target = new MemoryStream())
                    {
                        FileToDatabase objfiles = new FileToDatabase
                        {
                            Id          = Guid.NewGuid(),
                            ImageTitle  = photo.FileName,
                            SpaceshipId = spaceship.Id
                        };

                        photo.CopyTo(target);
                        objfiles.ImageData = target.ToArray();

                        _context.FileToDatabase.Add(objfiles);
                    }
                }
            }
            return(null);
        }