Hi
Normally you have one port to send email using SMTP. so i think if you are try sen d 100000 email you need use the thread as like as i said.that;s best solution to these kind of work.thats we need start multi thread to do as bulk operation.when we do like this way its will faster and quick to send emails.
But when we are use multi thread your email server must have support to accept parallel request.( i hope its default)
for email you don't need any providers Only you need SMTP enable in your server.
You write code for that with multi thread it will work with fine man
here start points
For the threading you can use this sample directly
http://dotnetperls.com/Content/BackgroundWorker-Introduction.aspx
Under the DoWork event you could call like this method
thank you
public override bool Dispatch(List<EmailMessage> list)
{
List<EmailMessage> failurelist = new List<EmailMessage>();
//Gets SmtpSettins from the config
SmtpClient client = new SmtpClient();
foreach (EmailMessage em in list)
{
try
{
MailMessage message = new MailMessage();
message.From = new MailAddress(em.EmailFrom);
message.To.Add(new MailAddress(em.EmailTo));
message.Subject = em.EmailSubject;
message.Body = em.EmailBody;
message.IsBodyHtml = em.IsHtml;
client.Send(message);
// on error, loop so to continue sending other email.
}
catch (Exception e)
{
failurelist.Add(em);
}
++totalSent;
}
if (failurelist.Count > 0)
{
ProcessFailedMessages(failurelist);
return false;
}
return true;
}
Thank you