public IActionResult Registrar(Usuario usuario, string contra1, string contra2) { ctrlusersContext context = new ctrlusersContext(); UsuarioRepository <Usuario> repos = new UsuarioRepository <Usuario>(context); try { if (context.Usuario.Any(x => x.Correo == usuario.Correo)) { ModelState.AddModelError("", "Ya hay un usuario registrado con este correo"); return(View(usuario)); } else { if (contra1 == contra2) { usuario.Contra = HashHelper.GetHash(contra1); usuario.Codigo = CodeHelper.GetCode(); usuario.Activo = 0; repos.Agregar(usuario); MailMessage mensaje = new MailMessage(); mensaje.From = new MailAddress("*****@*****.**", "VLIVE"); mensaje.To.Add(usuario.Correo); mensaje.Subject = "Confirma tu cuenta de VLIVE"; string text = System.IO.File.ReadAllText(Environment.WebRootPath + "/ConfirmarCorreo.html"); mensaje.Body = text.Replace("{##codigo##}", usuario.Codigo.ToString()); mensaje.IsBodyHtml = true; SmtpClient cliente = new SmtpClient("smtp.gmail.com", 587); cliente.EnableSsl = true; cliente.UseDefaultCredentials = false; cliente.Credentials = new NetworkCredential("*****@*****.**", "sistemas7g"); cliente.Send(mensaje); return(RedirectToAction("ActivarCuenta")); } else { ModelState.AddModelError("", "Las contraseñas no coinciden"); return(View(usuario)); } } } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(View(usuario)); } }