Rýchle a jednoduché: Pošlite E-mail prostredníctvom Gmail SMTP Server v .net C#

To nie je úplne novú tému, ale keď som musel urobiť, Našiel som veľa "prečo nie je táto práca pre mňa" a nie príliš veľa priamych odpovede. Dúfam, že niekto nájde to užitočné.

Nasledujúce bitový kód bude pošlite e-mail pomocou vlastné gmail účtu na to, vrátane príloh:

pomocou System.Net.Mail;
pomocou System.Net;

NetworkCredential loginInfo = nové NetworkCredential("[Môj Gmail ID]", "[Môj Gmail heslo]");
MailMessage MSG = nové MailMessage();
MSG. Z = nové MailAddress("[M Gmail Id]@gmail.com");
MSG. To.Add(nové MailAddress("paul.galvin@arcovis.com"));
MSG. Predmetom = "Skúšobný program infopath dev predmet";
MSG. Telo = "<HTML><telo><silné>Silné posolstvo.</silné></telo></HTML>";
MSG. IsBodyHtml = pravda;

foreach (reťazec aFile v NIPFD. GetAttachmentNamesAndLocations())
{
    MSG.Attachments.Add(nové Príloha(aFile));
} // Pridanie príloh.

SmtpClient klient = nové SmtpClient("smtp.gmail.com");
klient.EnableSsl = pravda;
klient.UseDefaultCredentials = FALSE;
klient.Poverenia = loginInfo;
klient.Port = 587;
klient.EnableSsl = pravda;
klient.Odoslať(MSG);

Niekoľko kľúčových kúsky, ktoré spomalil ma a ďalšie pripomienky / poznámky:

  • Prvý riadok, ktorý vytvorí objekt loginInfo musí používať gmail ID zbavený "@gmail.com”. Takže, Ak je môj gmail e-mailovú adresu "sharepoint@gmail.com"a heslo je"minového"potom riadok bude vyzerať:

NetworkCredential loginInfo = nové NetworkCredential("sharepoint", "xyzzy minového");

  • Môj účet gmail je nastavený na používanie protokolu SSL a ktorý nebolo problém.
  • Tam je nejaký konfliktných informácií tam o čo port používať. Použil som portu 587 a fungovalo to pokutu za mňa.
  • V mojom prípade, Tiež som potreboval poslať príloh. Že NIPFD objekt má metóda, že vie, kde sú moje príloh. To sa vracia plne cesta (napr.. "c:\tempattachment1.jpg". V mojom teste, Mal som dve prílohy a obaja pracovali dobre.

Použil som programu visual studio 2008 napísať tento kód.

</koniec>

Vyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Technorati Tags: ,,,

2 myšlienky na "Rýchle a jednoduché: Pošlite E-mail prostredníctvom Gmail SMTP Server v .net C#

  1. Jeff

    PowerShell Team blog nedávno mal podobný príspevok, ktorý som nájsť neoceniteľný ako server admin. Visual Studio je skvelý, ale mnoho mojich rovesníkov nie sú vývojárom a nemáte licenciu zakúpili. PowerShell vylepšíte príkazového riadku a je prístupnejší k nim. Je to len návrh pre všetky adminy vonku.

    Najlepšie,
    Jeff (www.spjeff.com / @spjeff)

    Odosielanie automatizované e-maily s Odoslať-MailMessage

    http://blogs.msdn.com/powershell/archive/2009/10/30/sending-automated-emails-with-send-mailmessage-convertto-html-and-the-powershellpack-s-taskscheduler-module.aspx

    Odpoveď

Zanechajte odpovedať na Jeff zrušiť odpoveď

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *