Kiire ja lihtne: Saada e-posti Gmaili SMTP Server kasutades .NET C#

See ei ole just uus teema, Aga kuna mul oli vaja teha, Ma leidsin palju "miks ei see töö minu jaoks" ja liiga palju otseseid vastuseid. Loodan, et keegi leiab see kasulik.

Järgmine natuke koodi saadab e-posti kasutades oma Gmaili konto seda teha, koos manustega:

kasutades System.Net.Mail;
kasutades System.Net;

NetworkCredential loginInfo = Uus NetworkCredential("[Mu Gmail ID]", "[Gmaili parool]");
MailMessage MSG = Uus MailMessage();
MSG. Hinne: = Uus MailAddress("[M Gmaili Id]@gmail.com");
MSG. To.Add(Uus MailAddress("paul.galvin@arcovis.com"));
MSG. Teema = "Test infopath dev teema";
MSG.Keha = "<HTML><keha><tugev>Tugeva sõnumi.</tugev></keha></HTML>";
MSG.IsBodyHtml = True;

foreach (stringi aFile aastal NIPFD.GetAttachmentNamesAndLocations())
{
    MSG.Attachments.Add(Uus Manus(aFile));
} // Failide kaasamine kirjale.

SmtpClient klient = Uus SmtpClient("smtp.gmail.com");
klient.EnableSsl = True;
klient.UseDefaultCredentials = väär;
klient.Mandaadi = loginInfo;
klient.Port = 587;
klient.EnableSsl = True;
klient.Saada(MSG);

Mõned peamised bitti, mis pidurdas mind maha ja muud tähelepanekud / märkmed:

  • Esimene rida, mis loob loginInfo objekt peab kasutama ID kooritud gmail "@gmail.com”. Nii, kui minu Gmaili e-posti aadress on "sharepoint@gmail.com"ja minu parool on"xyzzy"siis rida näeks:

NetworkCredential loginInfo = Uus NetworkCredential("sharepoint", "xyzzy");

  • Oma Gmaili konto on seadistatud kasutama SSL ja see ei olnud probleem.
  • On vastukäivat informatsiooni seal kohta, mis port kasutada. Ma kasutasin port 587 ja see töötas hästi minu jaoks.
  • Minu puhul, Mul ka vaja Manuse saatmine. NIPFD objekt on meetod, mis teab, kus minu manused on. See on tagasi täielikult tee (näiteks. "c:\tempattachment1.jpg". Minu test, Mul oli kaks manused ja nad mõlemad töötas trahvi.

Ma kasutasin visual studio 2008 kirjutada see kood.

</lõpp>

Telli minu blogi.

Järgi mind vidistama kell http://www.twitter.com/pagalvin

Technorati Tags: ,,,

2 mõtteid "Kiire ja lihtne: Saada e-posti Gmaili SMTP Server kasutades .NET C#

  1. Jeff

    PowerShelli meeskonna blogi oli hiljuti sarnane postitus, mis ma leidsin hindamatu server admin. Visual Studio on suurepärane, kuid paljud mu eakaaslased ei ole arendajad ja pole ostetud litsentsi. PowerShelli tunneb rohkem nagu käsurealt ja on neile kättesaadavad. Lihtsalt soovitus seal administraatoritel.

    Parim,
    Jeff (www.spjeff.com / @spjeff)

    Saates automatiseeritud kirju saada-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

    Vastus

Jäta Vasta Jeff Tühista vastus

Teie e-posti aadressi ei avaldata. Kohustuslikud väljad on tähistatud *