ben

OMÜ , Bilgisayar Mühendisliği, 13'

24 Ocak 2013 Perşembe

c# Mail Gönderme

   c# kullanarak yaptıgımız projelere mail gonderme eklentisi yazabiliriz. Bunun için SMTP mail gönderme prptokolünü kullanırız. Bunu örnek kodlamalar üzerinde anlatmaya başlşayalım. Öncelikle
projemizin using kısmına aşağıdaki kutuphaneyı eklememiz gerekmektedir.

using System.Net.Mail;

Mail gönderebilmek için bu kutuphane ile gelen MailMessage türünden yararlanacağız.
 
MailMessage ePosta = new MailMessage();
ePosta.From = new MailAddress("deneme@gmail.com");
ePosta.To.Add("esryrlmz@gmail.com");
ePosta.Subject = "c# deneme";
ePosta.Body = "programdan mail attım deneme.";

   Burada From e-postanın kimden göndereceği bilgisini tutar. to.Add ile eklenen e-posta yada postalar ise e-postanın gönderileceği mail adreslerinin bilgisini tutar.Subject mailin başlığı ve Body ise mailin içeriği bilgisini tutar.

ePosta.Attachments.Add(new Attachment(@"C:\deneme.txt"));

   Attachments.Add ise e-postaya gönderilecek dosyaların eklenmesini sağlar. Oluşturduğumuz bu pstayı gönderebilmek için SmtpClient nesnesini kullanırız.

SmtpClient smtp = new SmtpClient();
smtp.Credentials = new System.Net.NetworkCredential(deneme@gmail.com, "sifre123");

   Credentials methodu e-postayı gönderenin kimliğini tutar ilk parametre gönderenin mail adresi ikincisi ise şifresidir.

smtp.Port = 587;
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;

   Port SMTP port bilgisini, host SMTP sunucusunun isim uzayını tutar.EnableSsl ise ssl in olmasını istiyorsak true ,istemiyorsak false yapmamız gerekir.

smtp.SendAsync(ePosta, (object)ePosta);

   Bu işlem ise postayı gonderir. hata olup olmadığını kontrol için bu satırı try catch bloğu içine alabilriz.

Hiç yorum yok: