Sviluppare una NetLogic per l'invio di e-mail

Questa NetLogic invia e-mail a un indirizzo predefinito.
  1. Creare la NetLogic:
    1. In
      Vista progetto
      , fare clic con il pulsante destro del mouse su
      NetLogic
      e selezionare
      Nuovo
      NetLogic di runtime
      .
    2. Passare il puntatore del mouse sulla NetLogic, selezionare
      Modifica
      e immettere
      EmailSender
    3. Fare doppio clic sulla NetLogic.
      Viene aperto l'editor di codice esterno.
  2. Nell'editor di codice, effettuare le seguenti operazioni:
    1. Sostituire il codice esistente con il codice seguente:
      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 required 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); } } }
      MANCIA: Nell'esempio, l'e-mail immessa al runtime viene aggiunta alla proprietà
      ReplyToList
      . Questa proprietà contiene un elenco di indirizzi che verranno aggiunti automaticamente come destinatari in caso di risposta. Il metodo
      Send
      di
      SmtpClient
      è incapsulato in un costrutto try/catch per gestire le possibili eccezioni.
    2. Modificare il valore della variabile
      var fromAddress
      in modo che rispecchi l'e-mail del mittente.
    3. Modificare il valore della variabile
      var toAddress
      in modo che rispecchi l'e-mail del destinatario.
      MANCIA: Nell'esempio, l'e-mail viene inviata a un singolo destinatario, ma è possibile aggiungere altri destinatari utilizzando la proprietà
      To
      della classe
      MailMessage
      . Vedere Proprietà MailMessage.To (System.Net.Mail) | Microsoft Docs
      Ad esempio:
      mailMessage.To.Add(new MailAddress(...)
    4. Se necessario, fornire la password all'account e-mail modificando
      const string fromPassword = "Insert your password here.";
      IMPORTANTE: Se si utilizza un'autenticazione a due fattori per proteggere l'account e-mail, è necessario generare una password per l'applicazione.
    5. Se necessario, nel valore della variabile
      var smtpClient
      , configurare i dati
      Credentials
      .
  3. Salvare il codice.
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.