public async Task <ActionResult> Novo(int idAluno, MatriculaVM matriculaVM)
        {
            try
            {
                var matriculaModel = Mapper.Map <MatriculaVM, Matricula>(matriculaVM);
                //var idMatricula = _bussinesMatricula.IncluirMatricula(matriculaModel);
                await _bussinesMatricula.InserirAsync(matriculaModel);

                TempData["Mensagem"] = "Aluno matrículado com sucesso.";
                return(RedirectToAction("Index", "Alunos"));
            }
            catch (TurmaMatriculaExeception ex)
            {
                ViewData["Mensagem"] = ex.Message;
                return(View(matriculaVM));
            }
        }
        public async Task <ActionResult> Novo(int idAluno)
        {
            var matriculaVM = new MatriculaVM();
            var aluno       = await _bussinesAluno.ObterPorIdAsync(idAluno);

            if (aluno == null)
            {
                return(HttpNotFound("Aluno não encontrado"));
            }

            matriculaVM.AlunoId = aluno.Id;
            matriculaVM.Aluno   = Mapper.Map <Aluno, AlunoVM>(aluno);
            matriculaVM.Turmas  = Mapper.Map <IList <Turma>, List <TurmaVM> >(await _bussinesTurma.ObterTodosAsync());
            matriculaVM.Modulos = Mapper.Map <IList <Modulo>, List <ModuloVM> >(await _bussinesModulo.ObterTodosAsync());
            var matriculas = await _bussinesMatricula.ObterMatriculasPorAluno(idAluno);

            matriculaVM.TurmasMatriculadas = Mapper.Map <IList <Turma>, List <TurmaVM> >(matriculas.Select(m => m.Turma).ToList());
            return(View(matriculaVM));
        }