Hi
I am trying to send emails using the following method:
protected void Button1_Click(object sender, EventArgs e)
{
// this method of sending emails comes from
http://weblogs.asp.net/nawaf/archive/2007/12/07/sending-email-in-c-sync-async-multiple-recipients-attachments-etc.aspx
//string from = "[EMAIL PROTECTED]";
string from = "[EMAIL PROTECTED]";
string to = "[EMAIL PROTECTED]";
string subject = "Email from EMMA";
string messageBody = "The quick brown fox";
Attachment attachmnts=null ;
SendAsync(from, to, subject, messageBody, attachmnts);
}
private delegate void SendMailMethod(SmtpClient smtpClient,
MailMessage message);
public static void SendAsync(string from, string to, string
subject, string messageBody, params Attachment[] attachments)
{
try
{
Send(from, new string[] { to }, subject, messageBody,
true,
delegate(SmtpClient smtpClient, MailMessage message)
{ smtpClient.SendAsync(message, DateTime.Now.ToString()); },
attachments);
}
catch (Exception Ex) { CIOS.Utils.MsgBox(Ex.ToString()); }
}
private static void Send(string from, string[] to, string subject,
string messageBody, bool isBodyHtml, SendMailMethod sendDelegate,
params Attachment[] attachments)
{
SmtpClient emailClient;
try
{
emailClient = new SmtpClient("checkitout.co.uk");
MailMessage message = new MailMessage();
message.Subject = subject;
message.Body = messageBody;
message.Sender = new MailAddress(from);
foreach (string address in to)
message.To.Add(new MailAddress(address));
message.IsBodyHtml = isBodyHtml;
message.BodyEncoding = System.Text.Encoding.UTF8;
message.SubjectEncoding = System.Text.Encoding.UTF8;
//if (attachments != null)
//{
// foreach (Attachment attchment in attachments)
// message.Attachments.Add(attchment);
//}
//emailClient.UseDefaultCredentials = true;
emailClient.Credentials =
System.Net.CredentialCache.DefaultNetworkCredentials;
sendDelegate(emailClient, message);
CIOS.Utils.MsgBox("Message Sent");
}
catch (Exception ex)
{
CIOS.Utils.MsgBox(ex.ToString());
throw new Exception("Unable to send email");
}
}
The whole thing appears to run OK and the system responds with
"Message Sent". However, the message has not been sent. This is a bit
crap. Why does it say it has worked when it hasn't?
I am using Visual Studio 2005, and IIS version 5.1
Any ideas how I can get this to work?