Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 40028|Antwoord: 1

[.NET Core] Stuur berichten met ASP.NET Core

[Link kopiëren]
Geplaatst op 03-05-2017 15:32:37 | | |
inleiding

We weten dat de huidige .NET Core het SMTP-protocol niet ondersteunt; wanneer ik de verzendfunctie van de e-mail gebruik, moet ik enkele componenten van derden gebruiken om dit doel te bereiken; vandaag zal ik je introduceren aan twee open source e-mailverzendcomponenten, dat zijn MailKit en FluentEmail, die ik respectievelijk zal introduceren.

MailKit

In ASP.NET Core kun je MailKit gebruiken om berichten te verzenden, het ondersteunt cross-platform, IMAP, POP3, SMTP en andere protocollen.

Je kunt het installeren met de volgende methoden:


Hier is een eenvoudig voorbeeld van het versturen van een e-mail:



Als de inhoud die je wilt versturen HTML is, kun je het volgende gebruiken:




Fluent Email is ook een open source project, je kunt Razor-sjablonen gebruiken om e-mails te versturen, en je kunt integreren met sommige afzenders van derden zoals Mailgun, maar dit pakket ondersteunt SMTP alleen onder .NET 4.6. Je kunt het installeren met het volgende commando:


Je kunt een e-mail sturen met de meest basale methoden, zo simpel als dit:



Als alternatief kun je een Razor-sjabloon gebruiken om het volgende te versturen:


Email.DefaultRenderer vertelt FulentEmail welke renderer te gebruiken (je kunt ook je eigen renderer implementeren), levert vervolgens een sjabloonsjabloon met de inhoud van de sjabloonstring van de Razor-syntaxis, en gebruikt vervolgens UsingTemplate om de rendering te renderen.

CSHTML-sjabloon op schijf

Als het Razor-sjabloonbestand groot is en niet elegant om te gebruiken met strings, kun je het sjabloonbestand op de schijf zetten en het als volgt laden:




Berichten verzenden met Mailgun

Sommige mensen weten misschien niet veel over Mailgun; Mailgun is een buitenlands postdienstbedrijf, zoals de beroemde Github-e-maildienst die daarop wordt gehost, en het gratis Maingun-account kan 10.000 e-mails per maand versturen, wat genoeg is voor veel kleine en middelgrote websites.

Wanneer je Mailgun gebruikt om e-mails te versturen, moet je eerst een account registreren en daarna de Rest API van Mailgun gebruiken om de e-mails die je verstuurt of ontvangt te beheren. Mailgun met FluentEmail-integratie hoeft alleen pakketten zoals deze toe te voegen:


Na het registreren van Mailgun krijg je een API-sleutel en een domeinnaam op tweede niveau, en je moet deze als volgt configureren:




samenvatting

Uit bovenstaande voorbeelden blijkt dat MailKit en FluentEmail hun eigen voor- en nadelen hebben. Het voordeel van MailKit is dat het veel protocollen ondersteunt en cross-platform is, maar het nadeel is dat het geen ondersteuning biedt voor Razor, en als je Mailgun gebruikt, moet je het zelf integreren. Het voordeel van FlentEmail is dat het ondersteuning biedt voor Razor-sjablonen en Mailgun encapsuleert, maar het nadeel is dat het SMTP-protocol nog geen ondersteuning biedt voor .NET Core.

Samengevat: als je Mailgun gebruikt om e-mails te versturen, dan is FluentEmail de keuze die je moet kiezen, en als je het SMTP-protocol wilt gebruiken om naar je mailserver te linken om e-mails te versturen, dan kun je MailKit gebruiken.





Vorig:.net/c# Google Protocol Buffers tutorial
Volgend:Waarom is .net/c# Task trager dan Thread?
Geplaatst op 04-11-2021 13:57:02 |
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com