public ActionResult SalvarPaciente(UsuarioPaciente model)
        {
            try
            {
                model.ClinicaId = Convert.ToInt32(Session["UserId"]);
                model.EnderecoId = Convert.ToInt32(Session["enderecoId"]);
                model.Endereco.EnderecoId = model.EnderecoId;
                _unitOfWork.PacienteRepositorio.Update(model);
                _unitOfWork.EnderecoRepositorio.Update(model.Endereco);
                _unitOfWork.Save();

                Session.Add("Mensagem", "Dados atualizados com sucesso");
                return RedirectToAction("Index", "Home");
            }
            catch (Exception)
            {
                Session.Add("Erro", "Não foi possível atualizar os dados");
            }
            finally
            {
                _unitOfWork.Dispose();
            }
            return RedirectToAction("Index", "Home");
        }
        public ActionResult AddUserPaciente(UsuarioPaciente userPaciente)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //validar Unique Constraint
                    var validacao = ValidacaoBruta(userPaciente.Email, userPaciente.Rg, userPaciente.Cpf, userPaciente.NumeroConvenio);
                    if (validacao != null)
                    {
                        ModelState.AddModelError("", validacao);
                        return View(userPaciente);
                    }
                    //se passar pela validação grava...
                    userPaciente.UserName = (string)Session["UserNameCadastrado"];
                    userPaciente.UserId =
                        _unitOfWork.UsuarioRepositorio.GetIdByUserName((string)Session["UserNameCadastrado"]);
                    userPaciente.Perfil = "Paciente";
                    _unitOfWork.UsuarioRepositorio.Insert(userPaciente);
                    _unitOfWork.Save();

                    Session.Add("Mensagem", "Usuário adiciondado com sucesso");
                    return Roles.GetRolesForUser(User.Identity.Name)[0] == "Administrador"
                        ? RedirectToAction("Registrar")
                        : RedirectToAction("Index", "Home");
                }
            }
            catch (Exception)
            {
                ModelState.AddModelError("", "Não foi possível adicionar o Usuário");
            }
            finally
            {
                _unitOfWork.Dispose();
            }
            return View(userPaciente);
        }