WebMail Helper: uno de los muchos ayudantes web ASP.NET útiles.
La función del asistente de WebMail es simplificar el envío de correos electrónicos. Para un uso detallado, consulte este artículo.
El asistente WebMail facilita el envío de correo siguiendo SMTP (Protocolo simple de transferencia de correo) desde aplicaciones web.
Para demostrar cómo usar el correo electrónico, crearemos una página de entrada que le permitirá al usuario enviar una página a otra y enviar un correo electrónico sobre un problema de soporte.
Si creó una aplicación de demostración durante este tutorial, ya tiene una página llamada _AppStart.cshtml con el siguiente contenido:
@{ WebSecurity.InitializeDatabaseConnection("Usuarios", "Perfil de usuario", "Id. de usuario", "Correo electrónico", verdadero);
Para iniciar el asistente de WebMail, agregue la siguiente propiedad de WebMail a su página AppStart:
@{ WebSecurity.InitializeDatabaseConnection("Usuarios", "UserProfile", "UserId", "Email", verdadero); WebMail.SmtpServer = "smtp.example.com";WebMail.SmtpPort = 25;WebMail.EnableSsl = false;WebMail .Nombre de usuario = "[email protected]";WebMail.Contraseña = "contraseña-va-aquí";WebMail.From = "[email protected]"; }
Explicación de la propiedad:
SmtpServer: el nombre del servidor SMTP utilizado para enviar correo electrónico.
SmtpPort: El puerto utilizado por el servidor para enviar transacciones SMTP (correo electrónico).
EnableSsl: el valor es verdadero si el servidor utiliza cifrado SSL (Secure Socket Layer).
Nombre de usuario: el nombre de la cuenta de correo electrónico SMTP utilizada para enviar correos electrónicos.
Contraseña: La contraseña de la cuenta de correo electrónico SMTP.
De: El correo electrónico que se muestra en el campo Dirección de remitente (normalmente el mismo que Nombre de usuario).
Luego cree una página de entrada y asígnele el nombre Email_Input:
<!DOCTYPE html> <html> <body> <h1>Solicitud de asistencia</h1> <form método="post" action="EmailSend.cshtml"> <label>Nombre de usuario:</label> <input type=" text name="customerEmail" /> <label>Detalles sobre el problema:</label> <textarea name="customerRequest" cols="45" rows="4"></textarea> <p><input tipo="enviar" valor="Enviar" /></p> </form> </body> </html>
El propósito de la página de entrada es enviar la información y luego enviar los datos a una nueva página que puede enviar la información como un correo electrónico.
A continuación, cree una página para enviar correos electrónicos y asígnele el nombre Email_Send:
@{ // Leer entrada var customerEmail = Request["customerEmail"]; var customerRequest = Request["customerRequest"]; intentar { // Enviar correo electrónico WebMail.Send(to:"[email protected]", asunto: "Ayuda solicitud de - " + correo electrónico del cliente, cuerpo: solicitud del cliente ); } captura (excepción ex) { <text>@ex</text> } }
Para obtener más información sobre el envío de correo electrónico desde aplicaciones de páginas web ASP.NET, consulte el Manual de referencia de objetos WebMail.