示例#1
0
        // GET: Conteudo/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var conteudo = await _context.Conteudo.FindAsync(id);

            if (conteudo == null)
            {
                return(NotFound());
            }

            var model = new EditConteudoViewModel(
                conteudo.Id,
                conteudo.Menu,
                conteudo.Titulo,
                conteudo.Artigo,
                conteudo.Imagem,
                conteudo.Upload);

            //var uploads = Path.Combine(_env.WebRootPath, "Upload");
            //model.FullUploadPath = Path.Combine(uploads, model.Upload);

            return(View(model));
        }
示例#2
0
        public async Task <IActionResult> Edit(int id, EditConteudoViewModel conteudo)
        {
            if (id != conteudo.Id)
            {
                return(NotFound());
            }

            if (_signInManager.IsSignedIn(User))
            {
                if (ModelState.IsValid)
                {
                    IFormFile file = null;
                    if (Request.Form.Files.Count > 0)
                    {
                        file = Request.Form.Files[0];
                        var uniqueFileName = GetUniqueFileName(file.FileName);
                        var uploads        = Path.Combine(_env.WebRootPath, "Upload");
                        var filePath       = Path.Combine(uploads, uniqueFileName);
                        file.CopyTo(new FileStream(filePath, FileMode.Create));
                        conteudo.Upload = uniqueFileName;
                    }
                    else
                    {
                        ModelState.AddModelError("Upload", "Por favor, anexe um arquivo.");
                        return(View(conteudo));
                    }
                    try
                    {
                        var model = new Conteudo(
                            conteudo.Menu,
                            conteudo.Titulo,
                            conteudo.Artigo,
                            conteudo.Imagem,
                            conteudo.Upload);
                        _context.Update(model);
                        await _context.SaveChangesAsync();
                    }
                    catch (DbUpdateConcurrencyException)
                    {
                        if (!ConteudoExists(conteudo.Id))
                        {
                            return(NotFound());
                        }
                        else
                        {
                            throw;
                        }
                    }
                    return(RedirectToAction(nameof(Index)));
                }
                return(View(conteudo));
            }
            return(RedirectToAction(nameof(Index)));
        }