示例#1
0
        public List <CreatedMediaDto> UploadMedia([FromBody] TypeIdUpload typeIdUpload)
        {
            if (typeIdUpload.UserId != null)
            {
                var user        = _db.Users.FirstOrDefault(u => u.Id == typeIdUpload.UserId) ?? throw _apiErrors.UserNotFount;
                var avatar      = typeIdUpload.Files.FirstOrDefault();
                var newFileName = UploadFile(avatar, ETypeUpload.UserAvatar);
                user.Avatar = newFileName;
                _db.SaveChanges();
                return(new List <CreatedMediaDto> {
                    new CreatedMediaDto {
                        FileName = newFileName
                    }
                });
            }

            if (typeIdUpload.NewsId != null)
            {
                var news = _db.News.FirstOrDefault(u => u.Id == typeIdUpload.NewsId);
                if (news == null)
                {
                    throw _apiErrors.NewsNotFound;
                }
                var newsFiles = typeIdUpload.Files.Select(file => UploadFile(file, ETypeUpload.NewsImages))
                                .Select(newFileName => new CreatedMediaDto {
                    FileName = newFileName
                }).ToList();
                news.PathToImages = newsFiles.Select(item => item.FileName).ToList();
                _db.SaveChanges();
                return(newsFiles);
            }

            return(new List <CreatedMediaDto>());
        }
示例#2
0
 public ActionResult <List <CreatedMediaDto> > UploadMedia([FromForm] TypeIdUpload typeIdUpload)
 {
     return(new OkObjectResult(_mediaService.UploadMedia(typeIdUpload)));
 }