Rask og enkel: Sende Email benytter Gmail SMTP-Server i .NET C#

Dette er ikke akkurat et nytt emne, men når jeg trengte å gjøre det., Jeg fant en masse "Hvorfor vil ikke dette fungere for meg" og ikke altfor mange direkte svar. Jeg håper noen finner dette nyttig.

Følgende bit av koden sender en e-post med gmail-kontoen min egen for å gjøre det, vedlegg:

ved hjelp av System.Net.Mail;
ved hjelp av System.Net;

NetworkCredential loginInfo = nye NetworkCredential("[Meg Gmail ID]", "[Min Gmail-passordet]");
MailMessage MSG = nye MailMessage();
MSG.From = nye MailAddress("[M Gmail Id]@gmail.com");
MSG.To.Add(nye MailAddress("paul.galvin@arcovis.com < script cf-hash ="f9e31"type =" text/javascript"> / *  * /"));
MSG. Subject = "Test infopath dev emne";
MSG. Body = "<HTML><kroppen><sterk>Et sterkt budskap.</sterk></kroppen></HTML>";
MSG. IsBodyHtml = sann;

foreach (streng aFile i NIPFD. GetAttachmentNamesAndLocations())
{
    MSG. Attachments.Add(nye Vedlegg(aFile));
} // Tillegging av vedlegg.

SmtpClient klienten = nye SmtpClient("smtp.gmail.com");
klient.EnableSsl = sann;
klient.UseDefaultCredentials = USANN;
klient.Legitimasjon = loginInfo;
klient.Port = 587;
klient.EnableSsl = sann;
klient.Sende(MSG);

Noen viktige biter som bremset meg ned og andre observasjoner / notater:

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

  • Min gmail konto er konfigurert til å bruke SSL og det var ikke et problem.
  • Det er noen motstridende informasjon der ute på hvilken port som skal brukes. Jeg brukte port 587 og den arbeidet fin for meg.
  • I mitt tilfelle, Jeg trengte også å sende vedlegg. NIPFD objektet har en metode som vet hvor min vedlegg er. Den returnerer en fullstendig bane (f.eks. "c:\tempattachment1.jpg". I min test, Jeg hadde to vedlegg og de begge arbeidet fin.

Jeg brukte visual studio 2008 å skrive denne koden.

</slutten>

Abonner på bloggen min.

Følg meg på Twitter på http://www.twitter.com/pagalvin

Technorati Merkelapper: ,,,

2 tanker om “Rask og enkel: Sende Email benytter Gmail SMTP-Server i .NET C#

  1. Jeff

    PowerShell-teambloggen nylig hadde et lignende innlegg som jeg fant uvurderlig som en server admin. Visual Studio er flott, men mange av mine jevnaldrende er ikke utviklere og ikke har en lisens kjøpt. PowerShell føles mer som kommandolinjen og er mer tilgjengelig for dem. Bare et forslag for alle admins ute.

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

    Sender automatisert e-post med Send-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

    Svar

legg igjen et svar

e-postadressen din vil ikke offentliggjøres. Obligatoriske felt er merket *