public ActionResult Cadastrar()
 {
     var viewModel = new ObjetoTipoViewModel();
     return View(viewModel);
 }
        public ActionResult Cadastrar(ObjetoTipoViewModel viewModel)
        {
            try
            {
                //Cadastrar
                if (ModelState.IsValid)
                {
                    var model = Mapper.Map<ObjetoTipoViewModel, ObjetoTipo>(viewModel);

                    if (viewModel.ImagemFile != null)
                        model.Imagem = "imagem_capa" + Path.GetExtension(viewModel.ImagemFile.FileName);

                    _objetoTipoApp.Incluir(model);

                    if (viewModel.ImagemFile != null)
                    {
                        var caminhoDaPasta = Server.MapPath(
                            HttpContext.Application["VirtualPathImgSistema"] + "/objetoTipo/" + model.Id + "/");

                        GerenciadorDePastas.CriarPasta(caminhoDaPasta);
                        GerenciadorDePastas.AdicionarArquivo(
                            viewModel.ImagemFile, model.Imagem, caminhoDaPasta);
                    }

                    Success("Cadastro efetuado com sucesso.");

                    return RedirectToAction("Editar", "ObjetoTipo", new { @id = model.Id });
                }

                return RedirectToAction("Cadastrar", "ObjetoTipo");
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public ActionResult Editar(ObjetoTipoViewModel viewModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var modelAux = _objetoTipoApp.ObterPorId(viewModel.Id);

                    if (modelAux != null)
                    {
                        var model = Mapper.Map<ObjetoTipoViewModel, ObjetoTipo>(viewModel);

                        if (viewModel.ImagemFile != null)
                            model.Imagem = "imagem_capa" + Path.GetExtension(viewModel.ImagemFile.FileName);
                        else
                            model.Imagem = modelAux.Imagem;

                        _objetoTipoApp.Editar(model);

                        if (viewModel.ImagemFile != null)
                        {
                            var caminhoDaPasta = Server.MapPath(HttpContext.Application["VirtualPathImgSistema"]
                                                                + "/objetoTipo/" + model.Id + "/");

                            GerenciadorDePastas.CriarPasta(caminhoDaPasta);
                            GerenciadorDePastas.AdicionarArquivo(
                                viewModel.ImagemFile, model.Imagem, caminhoDaPasta);
                        }

                        Information("Atualização efetuada com sucesso");
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return RedirectToAction("Editar", "ObjetoTipo", new { @id = viewModel.Id });
        }