NetLogic zum Versenden von E-Mails ausarbeiten
Diese NetLogic sendet E-Mails an eine vordefinierte Adresse.
- Erstellen Sie die NetLogic:
- Klicken Sie inProjektansichtmit der rechten Maustaste aufNetLogicund wählen Sie .
- Bewegen Sie den Mauszeiger über die NetLogic, wählen Sie aus und geben SieEmailSenderein
- Doppelklicken Sie auf die NetLogic.Der externe Code-Editor wird geöffnet.
- Gehen Sie im Code-Editor wie folgt vor:
- Ersetzen Sie den vorhandenen Code durch folgenden Code:using System; using System.Net.Mail; using System.Net; using UAManagedCore; using FTOptix.NetLogic; public class EmailSender : BaseNetLogic { [ExportMethod] public void SendEmail(string replyToAddress, string mailSubject, string mailBody) { if (string.IsNullOrEmpty(replyToAddress) || mailSubject == null || mailBody == null) { Log.Error("EmailSender", "Invalid values for one or more parameters."); return; } var fromAddress = new MailAddress("mail@domain.com", "Name"); // Email Sender var toAddress = new MailAddress("mail@domain.com", "Name"); // Email Receiver // Password for SMTP server authentication if necessary const string fromPassword = "Insert your password here."; var smtpClient = new SmtpClient { // Fill the following lines with your SMTP server info Host = "smtp.domain.com", Port = 587, EnableSsl = true, // Set to true if the server requires SSL. DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new NetworkCredential(fromAddress.Address, fromPassword) }; var message = new MailMessage() { // Create the message. Subject = mailSubject, Body = mailBody }; // Specify the sender message.From = fromAddress; // Recipient emails // The MailMessage.To property is a collection of emails, so you can add different recipients using: // message.To.Add(new MailAddress(...)); message.To.Add(toAddress); // Add reply-to address message.ReplyToList.Add(replyToAddress); try { // Send email message smtpClient.Send(message); Log.Info("Message " + mailSubject + " sent successfully."); } catch (Exception ex) { // Insert here actions to be performed in case of an error when sending an email Log.Error("Error while sending message " + mailSubject + ", please try again. " + ex.Message); } } }TIPP: In diesem Beispiel wird die zur Laufzeit eingegebene E-Mail zur EigenschaftReplyToListhinzugefügt. Diese Eigenschaft enthält eine Liste von Adressen, die im Falle einer Antwort automatisch als Empfänger hinzugefügt werden. Die MethodeSendvonSmtpClientist in einem try/catch-Konstrukt gekapselt, um mögliche Ausnahmen zu handhaben.
- Ändern Sie den Wert der Variablevar fromAddress, um die E-Mail des Absenders wiederzugeben.
- Ändern Sie den Wert der Variablevar toAddress, um die Empfänger-E-Mail widerzuspiegeln.TIPP: Im Beispiel wird die E-Mail an einen einzigen Empfänger gesendet, aber Sie können weitere Empfänger hinzufügen, indem Sie dieTo-Eigenschaft derMailMessage-Klasse verwenden. Siehe MailMessage.To Property (System.Net.Mail) | Microsoft DocsBeispiel:mailMessage.To.Add(new MailAddress(...)
- Geben Sie bei Bedarf das Passwort für das E-Mail-Konto an, indem Sieconst string fromPassword = "Insert your password here.";ändern.WICHTIG: Wenn Sie eine Zwei-Faktor-Authentifizierung zum Schutz Ihres E-Mail-Kontos verwenden, müssen Sie ein Passwort für die Anwendung erstellen.
- Konfigurieren Sie bei Bedarf im Variablenwertvar smtpClientdieCredentials-Daten.
- Speichern Sie den Code.
Rückmeldung geben