C# İLE OFFICE365 ÜZERİNDEN MAIL GÖNDERMEK
C# ile Office365 üzerinden mail gönderebilmek için öncelikle aşağıdaki bağlantıdan Microsoft Exchange Web Services Managed API'ı indirdik. Kurulumu yaptıktan sonra Visual Studio'dan projemizin Reference bölümünden gerekli .dll dosyalarını ekledik. Bulunduğu yol C:\Program Files\Microsoft\Exchange\Web Services\2.2\
İndirme bağlantısı : https://www.microsoft.com/en-us/download/details.aspx?id=42951
Aşağıdaki namespace gerekiyor.
using Microsoft.Exchange.WebServices.Data;
Mail gönderimini yapacak Exchange kodlarımız
public static void ExchangeUzerinden(string mailBaslik, string mailIcerik, string aliciPosta)
{
EmailAddress alacakAdres = new EmailAddress(aliciPosta);
string strsubject = mailBaslik;
string strbody = mailIcerik;
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
service.Credentials = new WebCredentials("test@bosforbilisim.com.tr", "123abcd");
//bunu kullanmaktaki amaç service.URL bilgisini otomatik almak fakat beklettiği için aşağıdaki şekilde manuel olarak tanımladık.
//service.AutodiscoverUrl("tamer@bosforbilisim.com.tr", RedirectionUrlValidationCallback);
service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx");
EmailMessage message = new EmailMessage(service);
message.Subject = strsubject;
message.Body = strbody;
message.ToRecipients.Add(alacakAdres);
message.Save();
message.SendAndSaveCopy();
}
private static bool RedirectionUrlValidationCallback(string redirectionUrl)
{
bool result = false;
Uri redirectionUri = new Uri(redirectionUrl);
if (redirectionUri.Scheme == "https")
{
result = true;
}
return result;
}
Gönder :
protected void Button1_Click(object sender, EventArgs e)
{
try
{
MailGonder.ExchangeUzerinden("Başlık", "Mesaj içeriği", "tmryigit@gmail.com");
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}