Įvadas
Žinome, kad dabartinis .NET Core nepalaiko SMTP protokolo, kai naudoju el. laiško siuntimo funkciją, turiu naudoti kai kuriuos trečiųjų šalių komponentus, kad pasiekčiau tikslą, šiandien supažindinsiu jus su dviem atvirojo kodo el. pašto siuntimo komponentais, jie yra "MailKit" ir "FluentEmail", aš juos atitinkamai pristatysiu.
Pašto rinkinys
"ASP.NET Core" galite naudoti "MailKit" pranešimams siųsti, jis palaiko kelių platformų, IMAP, POP3, SMTP ir kitus protokolus.
Galite įdiegti šiais būdais:
Štai paprastas el. laiško siuntimo pavyzdys:
Jei pagrindinis turinys, kurį norite siųsti, yra HTML, galite naudoti:
"Fluent Email" taip pat yra atvirojo kodo projektas, el. laiškams siųsti galite naudoti "Razor" šablonus ir integruoti su kai kuriais trečiųjų šalių el. pašto siuntėjais, pvz., "Mailgun", tačiau šis paketas palaiko SMTP tik pagal .NET 4.6. Galite įdiegti naudodami šią komandą:
Galite siųsti el. laišką paprasčiausiais būdais:
Arba galite naudoti skustuvo šabloną, kad siųstumėte:
Email.DefaultRenderer nurodo FulentEmail, kurį braižytuvą naudoti (taip pat galite įdiegti savo), tada pateikia šablono šabloną su Razor sintaksės šablono eilutės turiniu, o tada naudoja UsingTemplate, kad atvaizduotų.
CSHTML šablonas diske
Jei "Razor" šablono failas yra didelis ir nėra elegantiškas naudoti eilutes, galite įdėti šablono failą į diską ir įkelti jį taip:
Siųskite žinutes su Mailgun
Kai kurie žmonės gali nedaug žinoti apie "Mailgun", "Mailgun" yra užsienio pašto paslaugų įmonė, pavyzdžiui, joje yra garsioji "Github" el. pašto paslauga, o nemokama "Maingun" paskyra gali išsiųsti 10 000 el. laiškų per mėnesį, o to pakanka daugeliui mažų ir vidutinių svetainių.
Kai el. laiškams siųsti naudojate "Mailgun", pirmiausia turite užregistruoti paskyrą, o tada galite naudoti "Mailgun" teikiamą "Rest" API, kad galėtumėte tvarkyti siunčiamus ar gaunamus el. laiškus. "Mailgun" su "FluentEmail" integracija tereikia pridėti tokius paketus:
Užregistravus "Mailgun", jums bus priskirtas API raktas ir antro lygio domeno vardas, kurį turėsite sukonfigūruoti taip:
suvestinė
Iš aukščiau pateiktų pavyzdžių matome, kad "MailKit" ir "FluentEmail" turi savų privalumų ir trūkumų. "MailKit" privalumas yra tas, kad jis palaiko daugybę protokolų ir yra kelių platformų, tačiau trūkumas yra tas, kad jis nepalaiko "Razor", o jei naudojate "Mailgun", turite jį integruoti patys. "FlentEmail" privalumas yra tas, kad jis palaiko "Razor" šablonus ir kapsuliuoja "Mailgun", tačiau trūkumas yra tas, kad SMTP protokolas dar nepalaiko .NET Core.
Apibendrinant galima pasakyti, kad jei el. laiškams siųsti naudojate "Mailgun", turėtumėte pasirinkti "FluentEmail", o jei norite naudoti SMTP protokolą, kad susietumėte su pašto serveriu el. laiškams siųsti, turėtumėte naudoti "MailKit".
|