Skonfiguruj rejestrowanie aktywności klienta SMTP w .NET Core

Rejestrowanie aktywności służy do debugowania, a także do zbierania i analizowania informacji o działaniu klienta SMTP.

Włączenie rejestrowania aktywności

Użyj pliku appsettings.json, aby włączyć rejestrowanie aktywności

UWAGA: Ta opcja jest preferowana dla aplikacji .NET Core.

Logowanie SmtpClient można włączyć przy użyciu następujących kroków i przykładów kodu:

  1. Dodaj plik konfiguracyjny appsettings.json do projektu C#, jeśli nie został jeszcze dodany.

  2. Upewnij się, że plik projektu zawiera następujące wiersze w sekcji ItemGroup.

       <Content Include="appsettings.json">
           <CopyToOutputDirectory>Always</CopyToOutputDirectory>
       </Content>
    
  3. Następnie dodaj następującą zawartość do pliku appsettings.json.

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

Powyższe dwie właściwości to:

  • SmtpDiagnosticLog – określa względną lub bezwzględną ścieżkę do pliku logu.

  • SmtpDiagnosticLog_UseDate – określa, czy dodać reprezentację tekstową bieżącej daty do nazwy pliku logu.

Włącz rejestrowanie aktywności w kodzie programu

Możesz także włączyć rejestrowanie od razu w kodzie.

UWAGA: nawet jeśli już włączyłeś rejestrowanie przy użyciu plików konfiguracyjnych, ta opcja zostanie zastosowana.

Logowanie SmtpClient można włączyć przy użyciu następujących kroków i przykładów kodu:

  1. Utwórz SmtpClient.
  2. Ustaw ścieżkę do pliku dziennika przy użyciu LogFileName właściwość.
  3. Ustaw UseDateInLogFileName właściwość, jeśli jest to konieczne.
   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);
   }

Użyj pliku App.config, aby włączyć rejestrowanie aktywności

Aktywność klienta SMTP może być rejestrowana poprzez modyfikację sekcji configSections w pliku konfiguracyjnym. Rejestrowanie diagnostyczne można wykonać następującymi krokami:

  1. Dodaj grupę sekcji o nazwie "applicationSettings".
  2. Dodaj sekcję o nazwie "Aspose.Email.Properties.Settings".
  3. Dołącz ustawienie o nazwie SmtpDiagonosticLog, w którym nazwa pliku jest zdefiniowana w applicationSettings/Aspose.Email.Properties.Settings

Oto przykładowa aplikacja oparta na formularzu, która używa SmtpClient do wysłania e‑maila. Cała ta czynność jest rejestrowana poprzez modyfikację pliku App.config. Utwórz aplikację formularzową z jednym przyciskiem. Dodaj następujący kod dla zdarzenia kliknięcia przycisku:

  1. Dodaj odwołanie do Aspose.Email.
todo:image_alt_text
  1. Dodaj plik App.Config i zmodyfikuj go tak, aby jego zawartość była następująca
  • Dla C# .NET użyj następującej opcji
todo:image_alt_text
  • Dla VB .NET użyj następującej opcji
todo:image_alt_text   todo:image_alt_text
todo:image_alt_text
  1. Uruchom kod i następnie sprawdź folder debug. Zostanie wygenerowany następujący plik.
todo:image_alt_text