public event ExtendedAsyncCompletedEventHandler<TResult> ReadResponseCompleted
Asynchronously send a command to the SMTP server and read the response from it.
using System; using ComponentPro.Net.Mail; ... // Create a new instance of the Smtp class. Smtp client = new Smtp(); // Connect to the server. client.Connect("myserver"); // Or you can specify the SMTP port with // client.Connect("myserver", 25); // Login to the server. client.Authenticate("user", "password"); // ... // Send 'HELP' command to the server. await client.SendCommandAsync("HELP", false); // ... // Asynchronously read response from the server. SmtpResponse response = await client.ReadResponseAsync(); // ... // Print out the response. Console.WriteLine(response.RawResponse); // Disconnect. client.Disconnect();
Asynchronously send a command to the SMTP server and read the response from it.
using System; using System.ComponentModel; using ComponentPro; using ComponentPro.Net.Mail; ... public void DoSendCommandAsync() { // Create a new instance of the Smtp class. Smtp client = new Smtp(); // Connect to the server. client.Connect("myserver"); // Or you can specify the SMTP port with // client.Connect("myserver", 25); // Login to the server. client.Authenticate("user", "password"); // ... // Register an event handler. client.SendCommandCompleted += client_SendCommandCompleted; client.ReadResponseCompleted += client_ReadResponseCompleted; // Send 'HELP' command to the server. client.SendCommandAsync("HELP", false); // ... // Disconnect. client.Disconnect(); } void client_ReadResponseCompleted(object sender, ExtendedAsyncCompletedEventArgs<SmtpResponse> e) { Smtp client = (Smtp)sender; try { // Print out the response. Console.WriteLine(e.Result.RawResponse); } catch (Exception exc) { Console.WriteLine("Error: " + exc.ToString()); } } void client_SendCommandCompleted(object sender, AsyncCompletedEventArgs e) { Smtp client = (Smtp)sender; if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); } else { // Asynchronously read response from the server. client.ReadResponseAsync(); } }