Cepat dan mudah: Mengirim Email menggunakan Gmail SMTP Server di .net C#

Ini bukan topik yang baru, tapi ketika aku diperlukan untuk melakukannya, Saya menemukan banyak "Mengapa tidak akan pekerjaan ini untuk saya" dan jawaban langsung yang tidak terlalu banyak. Saya berharap seseorang menemukan ini berguna.

Berikut sedikit kode akan mengirim email menggunakan account gmail saya sendiri untuk melakukannya, termasuk lampiran:

menggunakan System.net.mail;
menggunakan System.net;

NetworkCredential loginInfo = baru NetworkCredential("[ID Gmail saya]", "[Gmail kata sandi]");
MailMessage MSG = baru MailMessage();
MSG.Dari = baru MailAddress("[M Gmail Id]Gmail.com");
MSG.To.Add(baru MailAddress("paul.galvin@arcovis.com"));
MSG.Subjek = "Test infopath dev subjek";
MSG.Tubuh = "<HTML><bodyHTMLan >><  kuat >  pesan yang kuat.</strong>  </body>  </html> "><kuat>Pesan yang kuat.</kuat></bodyHTMLan >><  kuat >  pesan yang kuat.</strong>  </body>  </html> "></HTML>";
MSG.IsBodyHtml = benar;

foreach (string aFile dalam NIPFD.GetAttachmentNamesAndLocations())
{
    MSG.Attachments.Add(baru Lampiran(aFile));
} // Menambahkan lampiran.

SmtpClient klien = baru SmtpClient("smtp.gmail.com");
klien.EnableSsl = benar;
klien.UseDefaultCredentials = palsu;
klien.Kredensial = loginInfo;
klien.Pelabuhan = 587;
klien.EnableSsl = benar;
klien.Kirim(MSG);

Beberapa bit kunci itu diperlambat saya turun dan pengamatan lain / Catatan:

  • Baris pertama yang menciptakan objek loginInfo perlu menggunakan gmail ID dilucuti dari "Gmail.com”. Jadi, Jika alamat email gmail saya "sharepoint@gmail.com"dan password saya adalah"xyzzy"maka garis akan terlihat seperti:

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

  • Gmail account diatur untuk menggunakan SSL dan itu bukan masalah.
  • Ada beberapa informasi yang saling bertentangan di luar sana pada apa port untuk menggunakan. Saya menggunakan port 587 dan itu bekerja dengan baik bagi saya.
  • Dalam kasus saya, Saya juga perlu mengirim lampiran. Objek NIPFD yang memiliki metode yang tahu mana my lampiran. Kembali jalan sepenuhnya (misalnya. "c:\tempattachment1.jpg". Dalam pengujian saya, Aku punya dua lampiran dan mereka berdua bekerja dengan baik.

Saya menggunakan visual studio 2008 untuk menulis kode ini.

</akhir>

Berlangganan ke blog saya.

Ikuti saya di kegugupan di http://www.twitter.com/pagalvin

Technorati Tags: ,,,

2 pemikiran tentang “Cepat dan mudah: Mengirim Email menggunakan Gmail SMTP Server di .net C#

  1. Jeff

    PowerShell tim blog baru-baru ini posting yang sama yang saya temukan sangat berharga sebagai server admin. Visual Studio besar tetapi tidak banyak teman pengembang dan tidak memiliki lisensi dibeli. PowerShell terasa lebih seperti baris perintah dan lebih mudah diakses kepada mereka. Hanya saran untuk admin apapun di luar sana.

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

    Pengiriman email otomatis dengan mengirim-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

    Balasan

Tinggalkan Balasan Jeff Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai *