Konfiguracja SMTP nie zawsze jest łatwe. W zeszłym roku byłem rozwijających Fotografia sieci społecznej (np. Flickr) i musieliśmy systemu potwierdzenia rejestracji poprzez e-mail. Ustawienia SMTP witryną, na której byliśmy badania naprawdę zasysane więc po cenach dumpingowych ich SMTP i zainstalowany Google Apps w naszej domenie. GMail oferuje łatwy dostęp SMTP do wysyłania e-maili, a jeśli masz skonfigurowane w domenie e-mail na Google Apps to myślę, że najlepszym do wykorzystania na dowolny e-mail scenariuszy.

W tym poradniku powiem wam, jak łatwo można korzystać z Gmaila do wysyłania e-maili w programie ASP.NET (C #). Użyłem mojej ProgrammerFish Google Apps konta e-mail, ale można też użyć dowolnego konta Gmail. Końcowy strony wygląda następująco:

%tags

Więc tutaj jest, jak to zrobić:

Przejdź do menu Plik> Nowy> Witryny i nazwa projektu GmailMailSender (lub cokolwiek chcesz) i naciśnij OK

%tags

Teraz możemy stworzyć jakiś interfejs użytkownika dla strony internetowej. default.aspx dwukrotnie kliknąć w oknie eksploratora rozwiązań. i kliknij przycisk Projekt.

Stwórz interfejs podobny do tego. Wstaw 4 pola tekstowe o nazwie jak tb_GmailAccount, tb_GmailPassword (z "własności trybie tekstowym" jako "hasło" ), Tb_RecieverEmail i tb_Message (z "własności trybie tekstowym" jako "Multiline"). Również wstawić 2 etykiety nazwany lb_error (z "właściwości Text" jako "Błąd podczas wysyłania wiadomości" i "własność Visible" jako "fałszywe") bt_sendMail i lb_MailSent (z "właściwości Text" jako "Wysłane" z "Visible" nieruchomości " false ")

%tags

Teraz Solution Explorer kliknij prawym przyciskiem myszy węzeł projektu sieci Web i kliknij przycisk Add New Item

%tags

W Visual Studio installed templates wybierz klasy. Nazwij go jak GmailSender.cs i kliknij przycisk Dodaj. Jeśli pojawi się okno dialogowe następnie kliknij przycisk Tak

%tags

Dodaj następujący kod w tej klasie:

 System.Collections.Generic; using System.Linq; using System.Web; using System.Net; using System.Net.Mail; /// <summary> /// Summary description for GmailSender /// </summary> public class GmailSender { public GmailSender() { // // TODO: Add constructor logic here // } public static bool SendMail( string gMailAccount, string password, string to, string subject, string message) { try { NetworkCredential loginInfo = new NetworkCredential(gMailAccount, password); MailMessage msg = new MailMessage(); msg.From = new MailAddress(gMailAccount); msg.To.Add( new MailAddress(to)); msg.Subject = subject; msg.Body = message; 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 ; } } } using System; przy System.Collections.Generic; przy System.Linq; przy System.Web; using System.Net; przy System.Net.Mail / / / <summary> / / / Summary description for GmailSender / / / </ summary> public class GmailSender (public GmailSender () (/ / TODO: Add constructor logic here / /) public static bool sendmail (gMailAccount string, string password, string, String subject, String message) (try (NetworkCredential loginInfo = nowych NetworkCredential (gMailAccount, password); MailMessage msg = new MailMessage (); msg.From = new MailAddress (gMailAccount); msg.To.Add (nowy MailAddress (z)); msg.Subject = temat; msg.Body = message ; 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;))) 

Teraz otwórz Default.aspx i dwukrotnie kliknij przycisk Wyślij e-mail biblioteki bt_sendMail_click kod funkcji zdarzenia.

%tags Dodaj ten kod w klasie:

  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;

         )
         w przeciwnym razie
         (
             lb_error.Visible = false;
         )
     ) 

Naciśnij klawisz F5, aby ją uruchomić, jeśli nie jest włączone debugowanie pojawi się okno dialogowe kliknij OK

Jak ProgrammerFish. Com korzysta z Google Apps for e-mail, mogę użyć ProgrammerFish adres e-mail, aby wysłać e-mail.

%tags Jeśli mail zostanie wysłana pomyślnie, będzie to show e-mail została wysłana etykiety, innych mądrych pokaże się "Błąd podczas wysyłania etykiety mail, Lets check it out, jeśli jego przekazanie, czy nie, oto jest!

%tags

Pobierz rozwiązanie sprawy: GMailMailSender.zip

Podobnie jak w tym artykule? Subskrybuj nasze kanały do bardziej interesujących i oryginalnych aktualizacji technologii. Kliknij tutaj, aby uzyskać aktualizacje pocztą e-mail. Możesz także dołączyć do naszej strony wentylatora Facebook