public ActionResult Create(Empleado empleado)
        {
            try
            {
                var existeCorreoEmpleado = repositorio.ObtenerPorCorreo(empleado.Correo);

                if (ModelState.IsValid && existeCorreoEmpleado == null)
                {
                    if (propietario.ObtenerPorCorreo(empleado.Correo) != null)
                    {
                        //este correo ya está en uso y este software no permite los mismo correos :(
                        if (TempData.ContainsKey("Id"))
                        {
                            ViewBag.Id = TempData["Id"];
                        }
                        ViewBag.Mensaje = "Lamentamos informate que no podés elegir este correo. Intenta con otro por favor.";
                        return(View());
                    }
                    else
                    {
                        empleado.Clave = Convert.ToBase64String(KeyDerivation.Pbkdf2(
                                                                    password: empleado.Clave,
                                                                    salt: System.Text.Encoding.ASCII.GetBytes("SALADA"),
                                                                    prf: KeyDerivationPrf.HMACSHA1,
                                                                    iterationCount: 1000,
                                                                    numBytesRequested: 256 / 8));
                        repositorio.Alta(empleado);
                        return(RedirectToAction(nameof(Index)));
                    }
                }
                else
                if (TempData.ContainsKey("Id"))
                {
                    ViewBag.Id = TempData["Id"];
                }
                ViewBag.Mensaje = "Campo vacío y/o correo no disponible. Intente otro";
                return(View());
            }
            catch (Exception ex)
            {
                ViewBag.Error      = ex.Message;
                ViewBag.StackTrate = ex.StackTrace;
                if (TempData.ContainsKey("Id"))
                {
                    ViewBag.Id = TempData["Id"];
                }
                ViewBag.Mensaje = "No sabemos que pasó pero hiciste algo mal seguro.";
                return(View());
            }
        }
        public ActionResult Registrar(Empleado empleado)
        {
            try
            {
                var existeCorreoEmpleado = empleadosRepo.ObtenerPorCorreo(empleado.Correo);

                if (ModelState.IsValid && existeCorreoEmpleado == null)
                {
                    if (propietarios.ObtenerPorCorreo(empleado.Correo) != null)
                    {
                        //este correo ya está en uso y este software no permite los mismo correos :(
                        ViewBag.MensajeError = "Este correo ya fue registrado :(";
                        return(View());
                    }
                    else
                    {
                        empleado.Clave = Convert.ToBase64String(KeyDerivation.Pbkdf2(
                                                                    password: empleado.Clave,
                                                                    salt: System.Text.Encoding.ASCII.GetBytes("SALADA"),
                                                                    prf: KeyDerivationPrf.HMACSHA1,
                                                                    iterationCount: 1000,
                                                                    numBytesRequested: 256 / 8));
                        empleadosRepo.Alta(empleado);
                        TempData["Id"] = empleado.IdEmpleado;
                        ViewBag.Exito  = "Registrado con exito.";
                        return(View());
                    }
                }
                else
                {
                    ViewBag.MensajeError = "Campos vacíos u/o el correo ya está en uso.";
                }
                return(View());
            }
            catch (Exception ex)
            {
                ViewBag.MensajeError = "Campos vacíos u/o el correo ya está en uso.";
                ViewBag.StackTrate   = ex.StackTrace;
                return(View());
            }
        }