önsöz
Mevcut .NET Core'un SMTP protokolünü desteklemediğini biliyoruz, e-postanın gönderme fonksiyonunu kullandığımda bu amaca ulaşmak için bazı üçüncü taraf bileşenleri kullanmam gerekiyor, bugün size iki açık kaynak e-posta gönderme bileşenini tanıtacağım, bunlar MailKit ve FluentEmail, sırasıyla tanıtacağım.
MailKit
ASP.NET Core'da MailKit ile mesaj gönderebilirsiniz, bu da platformlar arası IMAP, POP3, SMTP ve diğer protokolleri destekler.
Aşağıdaki yöntemlerle kurabilirsiniz:
İşte e-posta göndermeye basit bir örnek:
Göndermek istediğiniz gövde içeriği HTML ise, aşağıdakileri kullanabilirsiniz:
Fluent Email aynı zamanda açık kaynaklı bir projedir, e-posta göndermek için Razor şablonlarını kullanabilirsiniz ve Mailgun gibi bazı üçüncü parti e-posta göndericilerle entegre olabilirsiniz, ancak bu paket yalnızca .NET 4.6 altında SMTP desteğini vermektedir. Aşağıdaki komutu kullanarak kurabilirsiniz:
En basit yöntemlerle e-posta gönderebilirsiniz, bu kadar basit:
Alternatif olarak, Razor şablonu kullanarak şunları gönderebilirsiniz:
Email.DefaultRenderer, FulentEmail'e hangi render cihazını kullanacağını söyler (kendi render cihazınızı da uygulayabilirsiniz), ardından Razor sözdiziminin şablon dizisinin içeriğiyle bir şablon sunar ve ardından UsingTemplate ile render eder.
Diskte CSHTML şablonu
Razor şablon dosyası büyükse ve dizileri kullanmak için uygun değilse, şablon dosyasını diske koyup aşağıdaki gibi yükleyebilirsiniz:
Mailgun ile mesaj gönderin
Bazı insanlar Mailgun hakkında çok şey bilmeyebilir, Mailgun yabancı bir posta hizmeti şirketidir; ünlü Github e-posta servisi burada bulunur ve ücretsiz Maingun hesabı ayda 10.000 e-posta gönderebilir, bu da birçok küçük ve orta ölçekli web sitesi için yeterlidir.
Mailgun kullanarak e-posta gönderirken, önce bir hesap açmanız gerekir, ardından Mailgun tarafından sağlanan Rest API'sini kullanarak gönderdiğiniz veya aldığınız e-postaları yönetebilirsiniz. FluentEmail entegrasyonlu Mailgun sadece şu şekilde paketleri eklemek yeterli:
Mailgun'u kaydettikten sonra, size bir API Anahtarı ve ikinci seviye bir alan adı atanacak ve bunu aşağıdaki şekilde yapılandırmanız gerekir:
özet
Yukarıdaki örneklerden, MailKit ve FluentEmail'in kendi avantajları ve dezavantajları olduğunu görebiliyoruz. MailKit'in avantajı birçok protokolü desteklemesi ve platformlar arası olmasıdır, ancak dezavantajı Razor için destek sağlamamasıdır ve Mailgun kullanıyorsanız kendiniz entegre etmeniz gerekir. FlentEmail'in avantajı, Razor şablonlarını desteklemesi ve Mailgun'ı kapsüllemesi, ancak dezavantajı SMTP protokolünün henüz .NET Core için destek sağlamamasıdır.
Özetle, e-posta göndermek için Mailgun kullanıyorsanız, seçmeniz gereken seçenek FluentEmail'dir ve SMTP protokolünü kullanarak e-posta sunucunuza bağlantı kurmak istiyorsanız, MailKit kullanmalısınız.
|