HOWTO · Csharp
Senden Sie HTML-formatierte E-Mails mit C#
In diesem Artikel erfahren Sie, wie Sie E-Mails im HTML-Format mit der Programmiersprache C# in ASP.Net versenden.
Auf dieser Seite
In diesem Artikel erfahren Sie, wie Sie HTML-formatierte E-Mails mit C# in ASP.Net senden.
Das Senden von E-Mails über SMTP kann entweder mit Ihrem aktuellen Gmail-Konto oder einem ganz neuen Konto getestet werden. Zur Kommunikation kann der Gmail Mailer-Client verwendet werden.
Erstellen Sie ein Windows-Formular zum Senden von HTML-formatierten E-Mails mit C#
-
Fügen Sie eine Bezeichnung und ein Textfeld für
Benutzernamehinzu. Dies ist der Benutzername des Absenders.
-
Fügen Sie eine Beschriftung und ein Textfeld für
Passworthinzu. Dies ist das Passwort des Absenderkontos.
-
Fügen Sie eine Beschriftung und ein Textfeld für
Sendtohinzu. Dies ist die E-Mail-Adresse des Empfängers.
-
Fügen Sie eine Beschriftung und ein Textfeld für
Betreffoder Titel hinzu.
-
Erstellen Sie zuletzt eine Schaltfläche mit dem Namen
Mail senden.
Das vollständige Formular sieht folgendermaßen aus:
Schreiben Sie den Code zum Senden von HTML-formatierten E-Mails mit C#
Im Folgenden sind die erforderlichen Schritte zum Schreiben des Codes zum Senden von HTML-formatierten E-Mails mit C# aufgeführt:
-
Importieren Sie zunächst die folgenden Bibliotheken:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Net.Mail; -
Erstellen Sie das Objekt
MailMessageund das ObjektSmtpClient.MailMessage mail = new MailMessage(); SmtpClient smtp = new SmtpClient("smtp.gmail.com"); -
Weisen Sie nun Eigenschaften wie Sender, Empfänger, Betreff, Text usw. Werte zu.
mail.To.Add(sendtotxt.Text); mail.Subject = subjecttxt.Text; var htmlbody = "Here your can write your html"; mail.Body = htmlbody; smtp.Port = 587; smtp.Credentials = new System.Net.NetworkCredential(usertxt.Text, passtxt.Text); -
Aktivieren Sie
SSLund senden Sie die Nachricht.smtp.EnableSsl = true; smtp.Send(mail);
Vollständiger Quellcode
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net.Mail;
namespace EmailExample {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void sendbtn_Click(object sender, EventArgs e) {
try {
MailMessage mail = new MailMessage();
SmtpClient smtp = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress(usertxt.Text);
mail.To.Add(sendtotxt.Text);
mail.Subject = subjecttxt.Text;
var htmlbody = "Here your can write your html";
mail.Body = htmlbody;
smtp.Port = 587;
smtp.Credentials = new System.Net.NetworkCredential(usertxt.Text, passtxt.Text);
smtp.EnableSsl = true;
smtp.Send(mail);
MessageBox.Show("Mail Sent!");
} catch (Exception ex) {
MessageBox.Show(ex.Message);
}
}
}
}
Ausgang: