Erfolgreiches Senden von E-Mails mit ASP.NET C#
Herausforderung:
Neue ASP.NET C#-Entwickler haben häufig Schwierigkeiten beim Versenden von E-Mails. Ein häufiges Problem ergibt sich aus einer falschen SMTP-Serverkonfiguration und -Authentifizierung.
Ursprünglicher Code (und seine Mängel):
Der folgende Codeausschnitt zeigt einen typischen Fehlversuch:
<code class="language-csharp">MailMessage mailObj = new MailMessage( txtFrom.Text, txtTo.Text, txtSubject.Text, txtBody.Text); SmtpClient SMTPServer = new SmtpClient("127.0.0.1"); try { SMTPServer.Send(mailObj); } catch (Exception ex) { Label1.Text = ex.ToString(); }</code>
Dieser Code schlägt fehl, weil er einen Localhost-SMTP-Server („127.0.0.1“) verwendet und die richtigen Authentifizierungsdetails fehlen.
Korrigierter Code:
Hier ist die korrigierte Implementierung:
<code class="language-csharp">SmtpClient smtpClient = new SmtpClient("smtp-proxy.tm.net.my", 25); smtpClient.Credentials = new System.Net.NetworkCredential("[email protected]", "myIDPassword"); smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; smtpClient.EnableSsl = true; MailMessage mail = new MailMessage(); // Setting Sender, Recipient, and CC mail.From = new MailAddress("info@MyWebsiteDomainName.com", "MyWeb Site"); mail.To.Add(new MailAddress("info@MyWebsiteDomainName.com")); mail.CC.Add(new MailAddress("[email protected]")); smtpClient.Send(mail);</code>
Wichtige Verbesserungen:
"smtp-proxy.tm.net.my"
durch die SMTP-Serveradresse Ihres Internetdienstanbieters (ISP)."[email protected]"
durch Ihre E-Mail-Adresse und "myIDPassword"
durch Ihr E-Mail-Passwort. Verwenden Sie sichere Passwörter und ziehen Sie, sofern verfügbar, sicherere Authentifizierungsmethoden in Betracht.smtpClient.EnableSsl = true;
gewährleistet eine sichere Kommunikation, wenn Ihr SMTP-Server dies erfordert. Überprüfen Sie die SMTP-Einstellungen Ihres Internetdienstanbieters.MailAddress
für From
, To
und CC
sorgt für eine bessere Fehlerbehandlung und Klarheit.Denken Sie daran, die Platzhalterwerte durch Ihre tatsächlichen SMTP-Serverdetails und Anmeldeinformationen zu ersetzen. Priorisieren Sie immer sichere Codierungspraktiken und schützen Sie Ihre Anmeldeinformationen.
Das obige ist der detaillierte Inhalt vonWie sende ich erfolgreich E-Mails in ASP.NET C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!