Autor: tigerwen01
In der täglichen Entwicklung stoßen wir häufig auf die Entwicklung eines Anwendungsmoduls, das automatisch E-Mails an Kunden sendet. Wenn ein Kunde beispielsweise einen bestimmten Vorgang ausführt oder sich online registriert oder einkauft, sendet der Server eine Nachricht an den Kunden Der Kundenvorgang ist abgeschlossen. Senden Sie automatisch eine Bestätigungs-E-Mail usw. .NET Framework Es gibt viele Möglichkeiten, Sockets zum Herstellen einer Verbindung mit dem Mailserver zu verwenden und dann den SMTP-Dienst (Simple Mail Transfer Protocol) zum Übertragen der E-Mails zu verwenden. Dies ist jedoch recht kompliziert. Lassen Sie uns die vom System.Web.Mail-Namespace des .NET Frameworks bereitgestellten Klassen verwenden, um das Senden von E-Mails abzuschließen, da dies sehr einfach ist.
Der System.Web.Mail-Namespace bietet eine einfache verwaltete Schnittstelle für SMTP (Simple Mail Transfer Protocol) und enthält viele Klassen, darunter wichtige Klassen wie MailMessageMailAttachmentSmtpMail. Die MailAttachment-Klasse stellt Eigenschaften zum Erstellen von E-Mail-Anhängen bereit Die MailMessage-Klasse stellt Eigenschaften und Methoden zum Erstellen von E-Mail-Nachrichten bereit, und die SmtpMail-Klasse stellt Eigenschaften und Methoden zum Senden von Nachrichten mithilfe der CDOSYS-Messaging-Komponente (Collaboration Data Objects) des Hostsystems bereit.
Um sicherzustellen, dass das Programm ordnungsgemäß ausgeführt werden kann, lautet die „Relay“-Methode zum Festlegen des standardmäßigen virtuellen SMTP-Servers in IIS wie folgt:
Rufen Sie die Schnittstelle „Internetinformationsdienste“ auf, klicken Sie mit der rechten Maustaste auf „Eigenschaften des standardmäßigen virtuellen SMTP-Servers“ und wählen Sie „Eigenschaften“ im Popup-Menü. Klicken Sie auf die Schaltfläche „Relay“ auf der Registerkarte „Zugriff“ und fügen Sie dann „127.0.0.1“ zu „IP-Adresse (Maske)/Domänenname“ im Fenster „Relay-Einschränkungen“ hinzu.
Unten finden Sie eine SendEmail.aspx-Datei, die mit der Betaversion 2 von Visual Web Developer 2005 Express Edition entwickelt wurde und unter Windows2000Server+sp4 ausgeführt wird. Als Referenz:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Mail" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" " http ://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd ">
<script runat="server">
void OnSend(Object Sender,EventArgs e) {
MailMessage messge = new MailMessage();
messge.From = Sed.Text;
messge.To = Receiver.Text;
messge.Body
= Body.Text
;
lab.Text
;
erfolgreich! ";
}
</script>
<html xmlns=" http://www.w3.org/1999/xhtml " >
<head runat="server">
<title>Benutzeroberfläche zum Senden von E-Mails</title>
</head>
<body>
<h1> Senden E-Mail-Benutzeroberfläche</h1>
<form id="form1" runat="server">
<div>
<hr>
<table Cellspacing="8">
<tr>
<td align=right valign=bottom>Absender:</td >
<td><asp:TextBox ID=Sed runat=server/></td>
</tr>
<tr>
<td align=right valign=bottom>Empfänger:</td>
<td> <asp:TextBox ID =Receiver runat=server /></td>
</tr>
<tr>
<td align=right valign=bottom>Theme:</td>
<td><asp:TextBox ID=Subj runat= server /></ td>
</tr>
<tr>
<td align=right valign=bottom>Content:</td>
<td><asp:TextBox ID=Body TextMode=MultiLine Rows=5 Columns=40 runat= server /></ td>
</tr>
</table>
<hr />
<asp:Button Text="Send" OnClick="OnSend" runat=server />
</div>
</form>
<asp:Label ID=lab runat= server/>
</body>
</html>
Dieser Artikel stellt nur vor, wie E-Mails in .NET Framework-Anwendungen gesendet werden, und beinhaltet keine detaillierte Einführung in die Klassen im System.Web.Mail-Namespace. Über System.Web.Mail kann auf relevante Informationen verweisen.