makaleler / Diğer Konular / ASP.NET gmail ile mail gönderimi

ASP.NET gmail ile mail gönderimi

10.05.2017 14:51:41

ASP.NET C# gmail smtp üzerinden mail gönderimi

Merhabalar arkadaşlar,(Not:Lütfen öneri ve sorularınızı yorum olarak atınız. Teşekkürler şimdiden)

Uygulama üzerinden bir raporu yada bir doğrulamayı mail ile gerçekleştirmek istersek bunu nasıl yapabiliriz?

Bu makalemde bu sorunun cevabını dile getirmeye çalışacağım. Uygulamanın bir kaç yerinde kullanıcaksak mail gönderimi için class yazarak ilerlemek daha doğru olabilir. Aşağıdaki kodlar ile c# üzerinden gmail smtp üzerinden mail gönderimi gerçekleştirebilirsiniz.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Web;
using System.Configuration;
using System.IO;
public class EPosta
{    
   private String HOST = "";
     private String MAIL_KULLANICI = "";
     private String MAIL_SIFRE ="";
     private String GONDEREN = "";
     private int PORT = 587;
    

    private String ALICI    = null;
    private String SUBJECT  = null;
    private String BODY     = null;

	public EPosta(String sEposta, String sSubject, String sBody)
	{
        if (sEposta != null)
            ALICI = sEposta;
        if (sSubject != null)
            SUBJECT = sSubject;
        if (sBody != null)
            BODY = sBody;
	}

    public String EPostaGonder(String sBasari="", String sHata="")
    {
        String result = "";
        try
        {
             HOST = "smtp.gmail.com";
            MAIL_KULLANICI = "mail_adresiniz@gmail.com";
            GONDEREN = "mail_adresiniz@gmail.com";
           MAIL_SIFRE = "sifreniz";
            SmtpClient client = new SmtpClient();        
            MailMessage mailgonder = new MailMessage();
            mailgonder.To.Add(ALICI); //mail göndermek istediğiniz herhangi bir hesap
           
            mailgonder.From = new MailAddress(GONDEREN);
            mailgonder.Subject = SUBJECT;
            mailgonder.IsBodyHtml = true; // html içerik gönderiyorsanız true düz metin ise false olacaktır.
            mailgonder.Body = BODY;
            
            client.Port = PORT; // mail gönderim portunuz. Sunucunuza göre değişiklik gösterebilir
            client.Host = HOST;// mail sunucunuz
            
            client.EnableSsl = true;
            client.UseDefaultCredentials = true;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            NetworkCredential guvenlik = new NetworkCredential(MAIL_KULLANICI, MAIL_SIFRE);
            client.Credentials = guvenlik;
            client.Send(mailgonder);
            client.Dispose();
            result = sBasari;
           
        }
        catch (Exception e)
        {
            //Herhangi bir hata olduğunda log dosyası oluşturmaktadır.
            result = sHata + " " + e.ToString();
            FileStream dosya = File.Create(HttpContext.Current.Server.MapPath("/hata_dosya_log.txt"));
            dosya.Close();
            StreamWriter Dosya = File.AppendText(HttpContext.Current.Server.MapPath("/hata_dosya_log.txt"));
            Dosya.WriteLine(DateTime.Now);
            Dosya.WriteLine("dosya yüklenirken hata oluştu.");
            Dosya.WriteLine(e);
            Dosya.Close(); 
           
        }
        return result;

    }

}

Teşekkürler.

yazar okanyurt

Yorumlar

Bu içerik için sizde yorum yapabilirsiniz!
anasayfa | makaleler | haberler | dosyalar | linkler | hakkımızda