public event ExtendedAsyncCompletedEventHandler<TResult> ConnectCompleted
Show how to asynchronously connect to an SMTP server, compose an email and send it.
using System; using ComponentPro.Net.Mail; using ComponentPro; ... // Create a new instance. Smtp client = new Smtp(); // Connect to the SMTP server asynchronously. await client.ConnectAsync("myserver"); // Or you can specify the SMTP port with // await client.ConnectAsync("myserver", 25); // Authenticate the user asynchronously. await client.AuthenticateAsync("userName", "password"); // Create a new mail message. MailMessage msg = new MailMessage(); msg.Subject = "Test Subject"; msg.BodyText = "Content"; msg.From = "from@mydomain.com"; msg.To = "to@somedomain.com"; // And send it. client.Send(msg); // ... // Disconnect asynchronously. client.DisconnectAsync(); // ...
Show how to asynchronously connect to an SMTP server, compose an email and send it.
using System; using System.ComponentModel; using ComponentPro.Net.Mail; using ComponentPro; ... public void DoAsyncConnect() { // Create a new instance. Smtp client = new Smtp(); client.ConnectCompleted += client_ConnectCompleted; client.AuthenticateCompleted += client_AuthenticateCompleted; client.DisconnectCompleted += client_DisconnectCompleted; // Connect to the SMTP server asynchronously. client.ConnectAsync("myserver"); // Or you can specify the SMTP port with // client.ConnectAsync("myserver", 25); // Your code here // ... } void client_ConnectCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e) { Smtp client = (Smtp)sender; if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); return; } // Authenticate the user asynchronously. client.AuthenticateAsync("userName", "password"); } void client_AuthenticateCompleted(object sender, AsyncCompletedEventArgs e) { Smtp client = (Smtp)sender; if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); return; } // Create a new mail message. MailMessage msg = new MailMessage(); msg.Subject = "Test Subject"; msg.BodyText = "Content"; msg.From = "from@mydomain.com"; msg.To = "to@somedomain.com"; // And send it. client.Send(msg); // ... // Disconnect asynchronously. client.DisconnectAsync(); } void client_DisconnectCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e) { if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); } }