public async Task <ActionResult> Edit(int id, IFormCollection collection)
        {
            try
            {
                Livro livro = new Livro();
                await TryUpdateModelAsync(livro);

                if (collection.Files != null)
                {
                    if (collection.Files[0] != null)
                    {
                        if (collection.Files[0].Length > 0)
                        {
                            var filePath = Path.GetTempFileName();

                            using (var stream = System.IO.File.Create(filePath))
                            {
                                await collection.Files[0].CopyToAsync(stream);
                            }

                            var bytes = System.IO.File.ReadAllBytes(filePath);

                            var base64 = Convert.ToBase64String(bytes);

                            livro.Imagem = base64;
                        }
                    }
                }

                _livroDAO.Alterar(livro);

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View());
            }
        }