SMTP‑Client‑Aktivitätsprotokollierung in .NET Core einrichten

Aktivitätsprotokollierung wird zum Debuggen sowie zum Sammeln und Analysieren von Arbeitsinformationen über den SMTP‑Client verwendet.

Aktivitätsprotokollierung aktivieren

appsettings.json-Datei verwenden, um die Aktivitätsprotokollierung zu aktivieren

HINWEIS: Diese Option wird für .NET‑Core‑Anwendungen bevorzugt.

Anmeldung SmtpClient kann mit den folgenden Schritten und Code‑Beispielen aktiviert werden:

  1. Fügen Sie einer C#‑Projektdatei eine appsettings.json‑Konfigurationsdatei hinzu, falls sie noch nicht vorhanden ist.

  2. Stellen Sie sicher, dass die Projektdatei die folgenden Zeilen im ItemGroup‑Abschnitt enthält.

       <Content Include="appsettings.json">
           <CopyToOutputDirectory>Always</CopyToOutputDirectory>
       </Content>
    
  3. Fügen Sie dann den folgenden Inhalt in die Datei appsettings.json ein.

       {
         "SmtpDiagnosticLog": "smtp.log",
         "SmtpDiagnosticLog_UseDate": true
       }
    

Die beiden oben genannten Eigenschaften sind:

  • SmtpDiagnosticLog – gibt den relativen oder absoluten Pfad zur Log‑Datei an.

  • SmtpDiagnosticLog_UseDate – gibt an, ob ein Datums‑String zum Log‑Dateinamen hinzugefügt werden soll.

Aktivitätsprotokollierung im Programmcode aktivieren

Sie können die Protokollierung auch sofort im Code aktivieren.

HINWEIS: Selbst wenn Sie die Protokollierung bereits über Konfigurationsdateien aktiviert haben, wird diese Option trotzdem angewendet.

Anmeldung SmtpClient kann mit den folgenden Schritten und Code‑Beispielen aktiviert werden:

  1. Erstellen Sie ein SmtpClient.
  2. Legen Sie den Pfad zur Protokolldatei fest, indem Sie LogFileName Eigenschaft.
  3. Setzen Sie die UseDateInLogFileName Eigenschaft, falls erforderlich.
   using (var client = new SmtpClient("your smtp server"))
   {
       // Set username, password, port, and security options
       client.Username = "your username";
       client.Password = "your password";
       client.Port = 465;
       client.SecurityOptions = SecurityOptions.SSLImplicit;
   
       // Set the path to the log file using the LogFileName property.
       client.LogFileName = @"C:\Aspose.Email.Smtp.log";
       
       // Set the UseDateInLogFileName property if it is necessary.
       client.UseDateInLogFileName = false;
   
       var eml = new MailMessage("from address", "to address", "this is a test subject", "this is a test body");
   
       client.Send(eml);
   }

App.config-Datei verwenden, um die Aktivitätsprotokollierung zu aktivieren

Die SMTP‑Client‑Aktivität kann protokolliert werden, indem die configSections in der Konfigurationsdatei angepasst werden. Die Diagnoseprotokollierung kann mit den folgenden Schritten durchgeführt werden:

  1. Fügen Sie eine Abschnittsgruppe namens "applicationSettings" hinzu.
  2. Fügen Sie einen Abschnitt mit dem Namen "Aspose.Email.Properties.Settings" hinzu.
  3. Fügen Sie die Einstellung mit dem Namen SmtpDiagonosticLog hinzu, wobei der Dateiname in applicationSettings/Aspose.Email.Properties.Settings definiert ist

Hier ist ein Beispiel für eine formularbasierte Anwendung, die verwendet SmtpClient um eine E‑Mail zu senden. Dieser gesamte Vorgang wird protokolliert, indem die App.config-Datei angepasst wird. Erstellen Sie eine Formularanwendung mit einem einzigen Button. Fügen Sie den folgenden Code für den Klick‑Ereignis des Buttons hinzu:

  1. Fügen Sie einen Verweis auf Aspose.Email hinzu.
todo:image_alt_text
  1. Fügen Sie die App.Config‑Datei hinzu und ändern Sie sie so, dass der Inhalt wie folgt aussieht
  • Für C# .NET verwenden Sie die folgende Option
todo:image_alt_text
  • Für VB .NET verwenden Sie die folgende Option
todo:image_alt_text   todo:image_alt_text
todo:image_alt_text
  1. Führen Sie den Code aus und prüfen Sie anschließend den Debug‑Ordner. Die folgende Datei wird erzeugt.
todo:image_alt_text