我正在创建邮件发送方web服务。每10秒发送1封邮件。我的总邮件数为1500.此操作在4.16小时后(1500 * 10/60/60)结束。在asp.net中运行web服务需要多长时间
我的Web服务的方法是这里>>
[WebMethod]
public string BroadcastMail(DataView dv, string title, string body,MailAddress FromAddress, string[] fileattachments)
{
SmtpClient client = new SmtpClient("smtp.mysite.com");
client.EnableSsl = false;
client.UseDefaultCredentials = true;
client.Credentials = new NetworkCredential("*********", "********");
foreach (DataRowView item in dv)
{
MailMessage msg = new MailMessage();
msg.From = FromAddress;
msg.Subject = title;
msg.IsBodyHtml = true;
msg.BodyEncoding = Encoding.UTF8;
msg.Body = body.AsciiToUnicode();
msg.To.Add(email);
client.Send(msg);
Thread.Sleep(10000);
}
}
你想从我问。你为什么要等10秒。因为我的邮件提供商同意邮件帐户每隔1小时可能发送300封邮件。
我想从aspx页面调用。
我的问题是:
如何从aspx页面调用此服务?
此Web服务是否工作?
你有另外一个想法吗?
由于应用程序池回收以及在OP代码中没有“可靠性”检查以减轻此问题的事实,电子邮件被丢失*的风险很大 – Rob 2010-08-12 06:01:05