public ActionResult Create()
 {
     var viewModelCreate = new ViewModelCreatePrato();
     try
     {
         IEnumerable<ViewModelDetailsCategoria> listViewModelDetails;
         using (_aplicacaoCategoria)
             listViewModelDetails = Mapper.Map<IEnumerable<Categoria>, IEnumerable<ViewModelDetailsCategoria>>(_aplicacaoCategoria.GetAll(true));
         viewModelCreate.Categorias = listViewModelDetails;
     }
     catch (MyException ex) { ViewBag.Alerta = new Alerta(ex.Message, TipoDeAlerta.Aviso); }
     return View(viewModelCreate);
 }
        public ActionResult Create(ViewModelCreatePrato viewModelCreate)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    IEnumerable<ViewModelDetailsCategoria> listViewModelDetails;
                    using (_aplicacaoCategoria)
                        listViewModelDetails = Mapper.Map<IEnumerable<Categoria>, IEnumerable<ViewModelDetailsCategoria>>(_aplicacaoCategoria.GetAll(true));
                    viewModelCreate.Categorias = listViewModelDetails;
                    return View(viewModelCreate);
                }
                using (_aplicacaoPrato)
                    _aplicacaoPrato.Add(Mapper.Map<ViewModelCreatePrato, Prato>(viewModelCreate));
                return RedirectToAction("Index");

            }
            catch (MyException ex) { ViewBag.Alerta = new Alerta(ex.Message, TipoDeAlerta.Aviso); }
            return View(viewModelCreate);
        }