Pregunta

He estado enviando correo electrónico desde C# y están funcionando bien, pero ahora también estoy buscando la funcionalidad para permitir que el receptor se denuncie. No puedo obtener cómo proceder ya que no tengo idea. He Google lo suficiente, así que necesito algo de pista.

A continuación se muestra mi código:

  MailMessage loginInfo = new MailMessage();
  loginInfo.To.Add(EmailTxt.Text.ToString());
  loginInfo.From = new MailAddress(sEmailId);
  loginInfo.Subject = "Subject";
  loginInfo.Body = "Your username is: " +;
  loginInfo.IsBodyHtml = true;

  SmtpClient smtp = new SmtpClient();
  smtp.Host = sHost;
  smtp.Port = 25;
  smtp.EnableSsl = false;
  smtp.Credentials = new System.Net.NetworkCredential("", "");
  smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
  smtp.Send(loginInfo); 
¿Fue útil?

Solución

La suscripción es fácil si ya está manteniendo la identificación de correo electrónico de los usuarios en la base de datos.

Siga los pasos a continuación:

Paso 1: Cree una columna adicional en la tabla de usuario como unsubscribe en la base de datos. tomará true o false como valores. Establecer predeterminado en false para que cada usuario suscrito reciba correo electrónico.

Nota: Antes de enviar correos a los usuarios, consulte su unsubscribe columna. Si es falso, envíe un correo electrónico. Si es cierto, no envíe un correo electrónico, ya que se han dado de baja.

Paso 2: Cree una URL de cancelación de suscripción como se muestra a continuación:

http://mywebsite.com/unsubscribeme/emailID=xyz@gmail.com

Paso 3: Envíe esta URL al usuario como URL de falta de suscripción para que cada vez que se sienta de darse de baja pueda hacerlo simplemente haciendo clic en esa URL.

Paso 4: Una vez, si el usuario hace clic en URL dada, lea el valor de consulta de correo electrónicoid emailID=xyz@gmail.com

Paso 5: Actualizar la información de la tabla de usuario configurando el unsubscribe valor de columna para true.

Ejemplo :

 //get user EmailID by QueryString as below:
 String EmailID=Reques.QueryString["emailID"].ToString();

//Update the usertable as below:
String Command ="update usertable set unsubscribe='true' where emailid='"+EmailID+"'";

Otros consejos

Supongo que tienes a tus suscriptores almacenados en alguna parte. Por lo tanto, la manera fácil de darse de baja es eliminar el registro de la tienda por su dirección de correo electrónico.

No tiene nada que ver con la clase SMTPClient.

El concepto de una lista de correo incluye una lista de direcciones de correo electrónico, generalmente guardadas en una base de datos. Su código agrega el receptor de un "correo electrónico que", ¿supongo que un cuadro de texto?

  • Siempre que no guarde direcciones de correo electrónico en algún lugar, no hay necesidad de darse cuenta de
  • Si guarda direcciones de correo electrónico, cree otro archivo que permita a las personas cancelarse.

Un archivo de cancelación de suscripción generalmente funcionaría de la siguiente manera:

  • Reciba la dirección de correo electrónico para cancelar la suscripción como parámetro de consulta
  • Muestre esta dirección de correo electrónico en un solo cuadro de texto, junto con un botón "Cancelar suscripción"
  • Si el usuario hace clic en este botón, elimine la dirección de correo electrónico de la base de datos.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top