Asp.net smtp mail gönderimi


Deprecated: Function create_function() is deprecated in /var/www/vhosts/digitaldunyam.net/coder.digitaldunyam.net/wp-content/plugins/codecolorer/lib/geshi.php on line 4698

Daha çok iletişim, parola, görüş öneri formu gibi işlemlerde işimize yarayan, database i teğet geçen smtp servisinin sağladığı bu sistemi Asp.net de de kullanılabilmekteyiz. Günlük 200 adet(tahmini değer) smtp mail gönderim limti olan gmail bu servisi kullananlar için rağbet görmekte.


Bir kaç satır kod ile Asp.net ile de gönderebileceğiniz smtp mail sistemini küçük bir örnekle uygulayalım. Resimdeki gibi bir form ekranı hazırlayarak smtp mail işlemine başlayabiliriz. Bunu yapmadan önce elinizin altında fazla kullanmadığınız gmail hesabınız olması gerekmekte.

3 label, iki textbox ve bir buton yeterli olacaktır. 3. labelı hata mesajı göstermek için kullanmalıyız. Gerekli form tasarımını hazırladıktan sonra gönder butonuna çift tıklayıp kod kısmına atlayabiliriz.

SmtpClient ve NetworkCredential için ;

1
2
using System.Net.Mail;
using System.Net;

eklemeniz gerekmekte.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 protected void Button1_Click(object sender, EventArgs e)
        {
            try
            {
                SmtpClient baglanti = new SmtpClient();
                MailMessage mesaj = new MailMessage();
                mesaj.To.Add("alici@hotmail.com"); //mail göndermek istediğiniz herhangi bir hesap, hotmail, isim@alanadi.com  vs hesap farketmez
                mesaj.From = new MailAddress("deneme@gmail.com"); //buradaki hesap üzerinde gönderi yapılacak, gmail hesabı
                mesaj.Subject = "Asp Net Smtp Mail Gönderim Denemesi";
                mesaj.IsBodyHtml = true;
                mesaj.Body = "<b>Adı</b> : " + TextBox1.Text + "<br>" + "<b>Soyadı :</b> " + TextBox2.Text; //daha fazla parametre için form tasarımı buradan yapılabilir, gidecek olan içerik burada hazırlanmakta

                NetworkCredential guvenligonderi = new NetworkCredential("deneme@gmail.com", "12345"); //gmail kullanıcı adı ve şifreniz

                baglanti.Credentials = guvenligonderi;

                baglanti.Port = 587; //gmail port nurası Türkiye için 587

                baglanti.Host = "smtp.gmail.com";

                baglanti.EnableSsl = true;
                baglanti.Send(mesaj);
                Response.Redirect("mesaj.aspx"); //gönderi yapıldıktan sonra otomatik yönelecek sayfayı buraya yazabilirsiniz
            }
            catch (Exception)
            {

                Label1.Text = "Lütfen Tekrar Gönderin"; //gönderide hata olursa buradaki mesaj devreye girmekte
            }
           
        }

Button1_Click olayına yukarıdaki gibi kodları uygulayıp gereken yerlere kendi gmail hesap ve şifrenizi girip deneme amaçlı alıcı kısmına diğer e posta adresinizi girerek Asp.net smtp mail gönderimini deneyebilirsiniz. Gereken açıklama kodlar içinde mevcut. mesaj.Subject alanı mailin başlık alanı, mesaj.Body gövde yani mailin içerik alanını teşkil etmekte.

Not: Buradaki hesap deneme amaçlı yazılmıştır. Bu yüzden çalışamayabilir, kendi gmail hesap ve şifre bilgileriniz girmeniz gerekir.

“Asp.net smtp mail gönderimi” için 7 cevap

  1. helal olsun uzun zamandır yapmak istediğim bi şeydi asp mail göndermek ve çok güzel anlatmışsınız bu siteyi tavsiye edecem herkese 🙂

  2. herhangi bir smtp server v.s. kurmak veya kurulu olması gerekıyor mu? Yoksa normal visual stdioda kodu derleyince çalışacak mı?

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir