La creazione di SMTP è a volte non è facile. L'anno scorso ero in via di sviluppo di una rete sociale di foto (come Flickr) e avevamo bisogno di un sistema di conferma della registrazione via email. Le impostazioni SMTP di hosting su cui abbiamo provato davvero schifo così ho dumping loro SMTP e installato Google Apps per il nostro dominio. GMail offre un accesso facile SMTP per l'invio di e-mail e se si è configurato e-mail del tuo dominio a Google Apps allora credo che la migliore da utilizzare per eventuali scenari di e-mail.

In questo tutorial vi dirò come si può facilmente utilizzare Gmail per l'invio di email in ASP.NET (C #). Ho usato il mio ProgrammerFish Google Apps account email, ma è anche possibile utilizzare qualsiasi account GMail. La pagina web finale come questo:

%tags

Ecco come fare:

Vai a File> New> Web e il nome di questo progetto GmailMailSender (o quello che volete) e premere Ok

%tags

Ora andiamo a creare una interfaccia utente per la pagina web. default.aspx fare doppio clic in Esplora soluzioni. E fare clic sul pulsante Design.

Creare un'interfaccia come questa. Inserire 4 caselle di testo chiamato come tb_GmailAccount, tb_GmailPassword (con 'proprietà TextMode' come "password" ), Tb_RecieverEmail e tb_Message (con 'proprietà TextMode' come "righe"). Anche inserire 2 etichette nominato lb_error (con 'proprietà Text' come "Errore durante l'invio di posta elettronica" e 'proprietà Visible' come "false") bt_sendMail e lb_MailSent (con 'proprietà Text' come "posta inviata" con 'Visible' immobile come " false ")

%tags

Ora Esplora soluzioni, fate clic destro sul Web Project Node e fare clic su Add New Item

%tags

In Visual Studio installati selezionare Modelli di classe. Chiamatelo come GmailSender.cs e fare clic su Aggiungi. Se una finestra di dialogo appare quindi scegliere Sì.

%tags

Aggiungere il seguente codice in questa categoria:

  using System;
 using System.Collections.Generic;
 utilizzando System.Linq;
 using System.Web;
 using System.Net;
 utilizzando System.Net.Mail;

 / / / <summary>
 / / / Summary description for GmailSender
 / / / </ Summary>
 public class GmailSender
 (
     pubblico GmailSender ()
     (
         / /
         / / TODO: Add constructor logic here
         / /
     )
     gMailAccount, string password, string to, string subject, string message) public static bool SendMail (gMailAccount string, string password, string a, string oggetto, string message)
     (
         provare
         (
             LoginInfo NetworkCredential = new NetworkCredential (gMailAccount, password);
             MailMessage msg = new MailMessage ();
             MailAddress msg.From = new (gMailAccount);
             msg.To.Add (MailAddress nuovo (a));
             soggetti msg.Subject =;
             messaggio = msg.Body;
             msg.IsBodyHtml = true;
             ); SmtpClient client = new SmtpClient ( "smtp.gmail.com");
             client.EnableSsl = true;
             client.UseDefaultCredentials = false;
             client.Credentials = loginInfo;
             client.Send (msg);

             return true;
         )
         catch (Exception)
         (
             return false;
         )

     )
 ) 

Ora aprite Default.aspx e fare doppio clic sul pulsante Invia Mail per aprire il codice di funzione bt_sendMail_click evento.

%tags Aggiungi questo codice nella classe:

  sender, EventArgs e) protected void bt_sendMail_Click (object sender, EventArgs e)
     (
         if (GmailSender.SendMail (tb_GmailAccount.Text, tb_GmailPassword.Text, tb_RecieverEmail.Text, tb_Subject.Text, tb_Message.Text))
         (
             lb_MailSent.Visible = true;

         )
         altro
         (
             lb_error.Visible = false;
         )
     ) 

Premere F5 per eseguire il debug se non abilitata la finestra di dialogo fare clic su OK

Come ProgrammerFish. Com sta utilizzando Google Apps per la posta elettronica, userò il mio ProgrammerFish indirizzo e-mail per inviare una e-mail.

%tags Se la posta viene inviata con successo, mostrerà email etichetta inviato, l'altro saggio verrà visualizzato un errore di invio di posta un'etichetta, Let's check it out se il suo mandato o no, è qui!

%tags

Scarica il file di soluzione: GMailMailSender.zip

Ti piace questo articolo? Iscriviti al nostro feed per gli aggiornamenti della tecnologia più interessante e originale. Clicca qui per ricevere gli aggiornamenti via e-mail. È possibile anche iscriversi alla nostra pagina dei fan Facebook