2009-07-29 106 views
5

使用ASP.Net发送海量电子邮件的最佳方式是什么?用ASP.Net发送海量电子邮件

例如,网站管理员需要向他所有网站的用户发送电子邮件(例如简讯)。

用ASP.Net 3.5和C#做这件事的最好方法是什么?

回答

2

如果我自己写这个,我只需从数据库中获取电子邮件地址,然后使用System.Net.Mail.SmtpClient类进行循环。

但是,请确保您了解CAN-SPAM行为并遵守指导原则。

+4

从经验上讲,这是一个非常糟糕的做法。 – 2009-07-29 04:19:17

+0

我已经测试过,但如果你想发送电子邮件到超过100个地址,请不要考虑它! – Babak 2009-07-30 17:56:15

+0

@Spencer如果你要发表反对意见,至少要提供一些细节,说明你为什么不同意给定的答案。 – 2010-02-07 03:59:33

1

看看这个链接>>>>Sending Mass Email using ASP.Net 来源是在VB.Net,但由于MFCL是相同的,你可以很容易地改变CSharp中的代码。然而,aspx部分保持不变。

9

按特洛伊的评论编辑。

您应该使用外部进程发送电子邮件。如果您的电子邮件列表增长到几百个,您很快就会遇到超时。一旦进入长达一千或一百万条记录的列表,您就可以忘记使用ASP.Net的任何可行的解决方案。

我实际上开发了一个窗口服务来处理发送大量邮件。基本上在ASP.Net中,我在各种数据库记录中创建一个活动和一个批处理作业,然后插入一个收件人列表。一旦作业完全写入数据库,其状态就会发生变化,以便Windows服务知道它可以继续并开始处理作业。然后,ASP.Net站点可以随时查看记录,以确定服务得到了多少。