E‑mails maken en inhoud instellen
Nieuw e-mailbericht maken
De MailMessage‑klasse vertegenwoordigt een e‑mailbericht en stelt ontwikkelaars in staat nieuwe e‑mailberichten te maken. Basis‑e‑mail‑eigenschappen zoals From, To, Subject en body kunnen eenvoudig aan het nieuw gemaakte bericht worden gekoppeld. Evenzo kunnen we het mail‑bericht opslaan in verschillende formaten zoals EML, MSG en MHTML.
- Maak een instantie van de MailMessage-klasse.
- Stel mailbericht‑eigenschappen in.
- Sla het mailbericht op in verschillende formaten.
De volgende codefragment toont hoe je een nieuwe e-mail maakt met verschillende eigenschappen.
Meerdere ontvangers specificeren
De MailMessage vertegenwoordigt een e‑mailbericht. Instanties van de MailMessage‑klasse worden gebruikt om e‑mailberichten te construeren die via de SmtpClient‑klasse naar een SMTP‑server worden verzonden. Deze sectie laat zien hoe u meer dan één e‑mailadres kunt opgeven. E‑mailadressen kunnen worden gespecificeerd met de MailMessage‑klasse. De e‑mailadressen die in de MailMessage‑klasse worden gebruikt zijn:
- To - Ontvangeradressen kunnen worden opgegeven in het ‘Aan’-veld. De ontvangers in het ‘Aan’-veld vormen het primaire publiek van het bericht. Er kan meer dan één ontvangeradres zijn.
- Cc - CC staat voor "carbon copy" of "courtesy copy" en stelt u in staat e-mailontvangers toe te voegen die de e-mail moeten zien maar niet per se moeten reageren. Managers, bijvoorbeeld, of teamleden die op de hoogte moeten zijn van een gesprek. Met Aspose.Email kunnen CC-adressen in uw code worden opgegeven. Op deze manier kunnen geautomatiseerde e-mails, of alle e-mails naar een specifiek adres, worden gekopieerd naar relevante personen.
- Bcc - Bcc, blind carbon copy, stelt u in staat een e-mail te sturen naar een ontvanger die verborgen blijft voor andere ontvangers. Waar een CC verschijnt in de e-mailinformatie die de hoofdontvangers zien, verschijnt een Bcc niet. Het is bedoeld voor een verborgen melding.
Om meerdere e-mailadressen in een e-mailbericht op te geven, volg deze stappen:
- Maak een instantie van de MailMessage-klasse.
- Geef de From- en meerdere To-, Cc- en Bcc-adressen op met behulp van de MailMessage-instantie.
- Maak een instantie van de SmtpClient-klasse en verstuur de e-mail met de Send-methode.
Het onderstaande codevoorbeeld laat zien hoe meerdere Aan-, CC- en BCC-adressen kunnen worden opgegeven.
E-mailadressen wijzigen naar een vriendelijke naam
De onderstaande programmeervoorbeelden tonen hoe e‑mailadressen te wijzigen in leesbare namen in een e‑mailbericht. Een vriendelijke naam is een naam die menselijker is dan het e‑mailadres, bijvoorbeeld John Smith in plaats van js346@domain.com. Bij het verzenden van een e‑mail kunnen we een vriendelijke naam koppelen aan een e‑mailadres in de constructor van de MailMessage‑klasse.
Om e-mailadressen te wijzigen in vriendelijke namen in een e-mailbericht, volg deze stappen:
- Maak een instantie van de MailMessage-klasse en geef e-mailadressen op in de Aan- en Van-velden, samen met vriendelijke namen.
- Geef de Cc- en Bcc-e-mailadressen op samen met vriendelijke namen door de constructor van de MailMessage-klasse aan te roepen in de MailMessage-instantie.
- Maak een instantie van de SmtpClient-klasse en verstuur de e-mail met de Send-methode.
Het volgende codefragment toont hoe u namen voor e-mailadressen weergeeft.
E-mailtekst instellen
De MailMessage‑klasse vertegenwoordigt een e‑mailbericht. Instanties van de MailMessage‑klasse worden gebruikt om e‑mailberichten te construeren die via de SmtpClient‑klasse naar een SMTP‑server voor levering worden verzonden. Een mailbody kan worden gespecificeerd met de MailMessage‑klasse. Een e‑mail kan meerdere bodies hebben. Er zijn twee typen mailbodies in de MailMessage‑klasse:
- HTML‑body
- Tekst‑body
Naast HtmlBody en TextBody heeft Aspose.Email nog twee alleen‑lees‑eigenschappen gerelateerd aan de mailbody:
- IsBodyText: geeft aan of de body tekst is.
- IsBodyHtml: geeft aan of de body HTML of platte tekst is.
Dit artikel laat zien hoe je platte tekst of HTML‑bodytekst definieert, alternatieve tekst instelt en de e‑mailbody codeert.
HTML-tekst instellen
HtmlBody wordt gebruikt om de HTML‑inhoud van een berichtbody op te geven. HtmlBody moet tussen -tags staan. Het volgende codefragment toont hoe u de HTML‑body instelt.
Alternatieve tekst instellen
Gebruik de AlternateView‑klasse om kopieën van een e‑mailbericht in verschillende formaten op te geven. Bijvoorbeeld, als u een bericht in HTML verzendt, wilt u mogelijk ook een platte‑tekstversie aanbieden voor ontvangers die e‑maillezers gebruiken die geen HTML kunnen weergeven. Deze klasse heeft twee eigenschappen, LinkedResources en BaseUri, die worden gebruikt om URL’s binnen de inhoud van de e‑mail op te lossen.
- LinkedResources is een verzameling LinkedResources‑objecten. Bij weergave worden URL’s binnen de e‑mailinhoud eerst vergeleken met de URL’s in de Content Link van elk LinkedResources‑object in de LinkedResources‑collectie en vervolgens opgelost.
- BaseUri wordt door de e-maillezer gebruikt om relatieve URL’s in de tekst te resolveren, en ook om relatieve Content Link-URL’s te resolveren in de LinkedResources-collectie.
Het volgende codefragment laat zien hoe u alternatieve tekst instelt.
MailMessage-functies
De MailMessage class stelt de inhoud van een e‑mailbericht voor. Instanties van de MailMessage class worden gebruikt om een e‑mailbericht samen te stellen dat wordt verzonden naar een SMTP‑server voor aflevering met behulp van de SmtpClient class. Dit artikel laat zien hoe u MailMessage class hulpfuncties voor het regelen van de volgende e‑mailfuncties:
- Datum en tijd - Via de MailMessage class Date‑eigenschap waarmee we de datum en tijd van een e‑mail krijgen of instellen.
- Berichtprioriteit - De MailPriority klasse specificeert prioriteitsniveaus voor het verzenden van een e-mailbericht. Het kan laag, normaal of hoog zijn. Prioriteit beïnvloedt de transmissiesnelheid en bezorging.
- Berichtgevoeligheid - De MailSensitivity klasse specificeert vijf gevoeligheidsniveaus.
- Bezorgingsmelding - Bezorgingsmeldingen laten afzenders weten dat de e-mail die ze hebben verzonden is afgeleverd in de inbox van de ontvanger.
Standaard is de datum de werkelijke datum waarop het bericht is verzonden, en de tijd is het tijdstip van verzending, zoals weergegeven door Microsoft Outlook. De daadwerkelijke e‑mailleveringstijd wordt echter door de SMTP‑server zelf toegevoegd in de e‑mailheader. Bijvoorbeeld, hieronder staat een veelvoorkomende e‑mailheader, waarbij Date het datumveld instelt.
Het onderstaande codefragment illustreert hoe elk van de hierboven besproken functies kan worden gebruikt.
Aanvragen van een leesbevestiging
De onderstaande programmeervoorbeelden laten zien hoe u een leesbevestiging kunt aanvragen. De MailMessage klasse DeliveryNotificationOptions Enumeratie‑eigenschap beschrijft de opties voor afleveringsnotificaties voor een e‑mail. Om een leesbevestiging aan te vragen na het verzenden van een e‑mail, volg deze stappen:
- Maak een instantie van de MailMessage klasse.
- Specificeer de afzender, ontvanger en HTML‑body voor de e‑mail in de MailMessage instantie.
- Specificeer de DeliveryNotificationOptions in andere MailMessage instanties.
- Maak een instantie van de SmtpClient klasse en verzend de e‑mail met de Send‑methode.
Leesbevestigingsverzoeken worden mogelijk niet altijd ingewilligd omdat:
- Een e-mailclient implementeert die functionaliteit mogelijk niet.
- De eindgebruiker kan die functionaliteit uitgeschakeld hebben.
- De eindgebruiker kan ervoor kiezen er geen te verzenden.
Het volgende codefragment laat zien hoe u een leesbevestiging kunt aanvragen.
E‑mailheaders instellen
E‑mailheaders vertegenwoordigen een internetstandaard en RFC definieert headervelden die in internet‑e‑mailberichten worden opgenomen. Een e‑mailheader kan worden opgegeven met behulp van de MailMessage‑klasse. Veelvoorkomende header‑typen zijn gedefinieerd in de HeaderType‑klasse. Het is een sealed‑klasse die functioneert als een normale enumeratie.
Normaal bevat een e-mailheader deze velden:
- To: Ontvangersadressen kunnen worden opgegeven in het To-veld. De ontvangers van het To-veld zijn het primaire publiek van het bericht. Er kan meer dan één ontvanger zijn.
- From: Dit veld toont het e‑mailadres van de afzender van het bericht.
- Cc: Maakt het mogelijk een bericht te verzenden als een "Carbon Copy" of "Courtesy Copy". Dat wil zeggen, de ontvanger wordt niet verwacht te antwoorden of te handelen. Meestal wordt leidinggevend personeel geïnformeerd via CC.
- Bcc: Staat voor Blind Carbon Copy, verwijst naar de praktijk om een bericht naar meerdere ontvangers te sturen waarbij de ontvangers niet de volledige lijst van geadresseerden zien. Het dient voor verborgen notificatie.
- ReplyTo: Dit headerveld geeft aan waar de afzender de antwoorden naartoe wil laten gaan.
- Subject: Titel, onderwerp, kop. Wordt vaak gebruikt als thread‑indicator voor berichten die reageren op of commentaar geven op andere berichten.
- Date: Deze header geeft een datum (en tijd) op. Gewoonlijk is dit de datum waarop het bericht is opgesteld en verzonden.
- XMailer: Informatie over de clientsoftware van de afzender. Voorbeeld: X‑Mailer: Aspose.Email. XMailer wordt gebruikt door e‑mailclients. Verschillende e‑mailclients hebben verschillende XMailer‑waarden. De XMailer‑waarde van MS Outlook is Microsoft Office Outlook, Build 11.0.5510. Deze wordt genegeerd door de e‑mailontvanger of -lezer.
Normaal ziet een e-mailheader er ongeveer zo uit:
Reply-To: reply@reply.com
From: sender@sender.com
To: guangzhou@guangzhoo.com
Subject: test mail
Date: 6 Mar 2006 8:2:2 +0800
X-Mailer: Aspose.Email
Om een e-mailheader aan te passen, volg deze stappen:
- Maak een instantie van de MailMessage klasse.
- Specificeer To, From, CC, Bcc, ReplyTo, Subject, Date & XMailer met een instantie van de MailMessage.
- Maak een instantie van de MimeHeader klasse en geef de geheime header op.
- Voeg de geheime header toe aan de MailMessage instantie.
De volgende codefragment toont hoe je e‑mailheaders instelt.
Het bovenstaande codefragment genereert een e‑mailheader in het volgende formaat. Dit kan worden bekeken door het resulterende bestand "MsgHeaders.msg" te openen in Microsoft Outlook en vervolgens de Eigenschappen te bekijken.
Reply-To: reply@reply.com
From: sender@sender.com
To: receiver1@receiver.com
CC: receiver2@receiver.com
BCC: receiver3@receiver.com
Subject: test mail
Date: 6 Mar 2006 8:2:2 +0800
X-Mailer: Aspose.Email
secret-header: mystery
Header invoegen op specifieke locatie
De Toevoegen methode van HeadersCollection klasse voegt de header toe aan het einde van de collectie. Soms kan het echter nodig zijn om een header op een specifieke locatie in te voegen. In dat geval, de Toevoegen methode zal niet helpen. Om dit te bereiken, gebruik de Insert methode van de HeadersCollection. Als de collectie headers met dezelfde naam bevat, wordt deze header vóór de andere headers met dezelfde naam ingevoegd. Het volgende codefragment toont hoe u een header op een specifieke locatie invoegt.
Aangepaste headers aan e‑mail toevoegen
De onderstaande programmeervoorbeelden tonen hoe een aangepaste header in een e‑mailbericht kan worden opgegeven. Een e‑mailheader kan worden gespecificeerd met de MailMessage klasse. Om een aangepaste header in een e‑mailbericht op te geven, volgt u deze stappen:
- Maak een instantie van de MailMessage klasse.
- Geef de to‑, from‑ en subject‑waarden op met de MailMessage‑instantie.
- Voeg de geheime header toe aan de MailMessage instantie.
- Maak een instantie van de SmtpClient-klasse en verstuur de e-mail met de Send-methode.
Het volgende codefragment laat zien hoe u aangepaste headers aan een e‑mail kunt toevoegen.