public ActionResult PutImage(int id, IFormFile file)

        {
            try
            {
                string FileName = Guid.NewGuid() + ".jpg";

                var cover = _booksOnlineContext.CoverPhoto.Where(p => p.BookID == id).FirstOrDefault();



                if (cover == null)
                {
                    cover        = new Dominio.CoverPhoto();
                    cover.BookID = id;
                    cover.Url    = FileName;
                    _booksOnlineContext.Add(cover);
                    _booksOnlineContext.SaveChanges();
                }
                else
                {
                    _booksOnlineContext.CoverPhoto.Remove(cover);
                    _booksOnlineContext.SaveChanges();

                    var coverins = new Dominio.CoverPhoto();
                    coverins.BookID = id;
                    coverins.Url    = FileName;
                    _booksOnlineContext.Add(coverins);
                    _booksOnlineContext.SaveChanges();
                }

                string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", FileName);
                using (Stream stream = new FileStream(path, FileMode.Create))
                {
                    file.CopyTo(stream);
                }

                return(StatusCode(StatusCodes.Status201Created));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
示例#2
0
            public async Task <ResponseOperations> Handle(UpdateBookParametros request, CancellationToken cancellationToken)
            {
                try
                {
                    var book = await _context.Book.FindAsync(request.BookID);

                    if (book == null)
                    {
                        return(new ResponseOperations()
                        {
                            Ok = false, Message = "We have not found the book ", Id = 0
                        });
                    }
                    else
                    {
                        book.Title       = request.Title;
                        book.Description = request.Description + ".";
                        book.PageCount   = request.PageCount;
                        book.Excerpt     = request.Excerpt;
                        book.PublishDate = request.PublishDate;
                        var valor   = _context.SaveChanges();
                        var booklnk = _context.AuthorBook.Where(prop => prop.BookID == request.BookID);

                        foreach (var rem in booklnk)
                        {
                            _context.Entry(rem).State = EntityState.Deleted; // added row
                            _context.AuthorBook.Remove(rem);
                        }
                        _context.SaveChanges();
                        if (request.AuthorLnk != null)
                        {
                            foreach (var id in request.AuthorLnk)
                            {
                                var authorBook = new AuthorBook
                                {
                                    AuthorID = id.AuthorID,
                                    BookID   = id.BookID
                                };



                                _context.Entry(authorBook).State = EntityState.Added; // added row
                                _context.AuthorBook.Add(authorBook);
                            }
                            await _context.SaveChangesAsync();
                        }


                        if (valor > 0)
                        {
                            return(new ResponseOperations()
                            {
                                Ok = true, Message = "The Book was updated.", Id = book.BookID
                            });
                        }
                        else
                        {
                            return(new ResponseOperations()
                            {
                                Ok = false, Message = "Book cannot be saved. ", Id = book.BookID
                            });
                        }
                    }
                }
                catch (Exception e)
                {
                    return(new ResponseOperations()
                    {
                        Ok = false, Message = e.Message, Id = 0
                    });
                }
            }