【问题标题】:Outlook Exchange Account Sends only 5 messagesOutlook Exchange 帐户仅发送 5 封邮件
【发布时间】:2014-02-06 05:26:04
【问题描述】:

我在 Console App Visual Studio 2012 中使用以下代码发送消息。 出于某种原因,当我从我的 Exchange 服务器帐户发送时,我在运行应用程序时一次只能发送 5 条消息。

但是,如果我从免费的outlook.com 网络帐户发送,那么我可以一次发送所有 10 条消息。我不确定这是否是服务器配置问题。

代码片段:

public static void SendMail(string recipientEmail, string subject, string body)
{
    using (MailMessage mailMessage = new MailMessage())
    {
        try
        {
            mailMessage.From = new MailAddress(ConfigurationManager.AppSettings["MailFrom"]);
            mailMessage.Subject = subject;
            mailMessage.Body = body;
            mailMessage.IsBodyHtml = true;
            mailMessage.To.Add(new MailAddress(recipientEmail));
            SmtpClient smtp = new SmtpClient();
            smtp.Host = ConfigurationManager.AppSettings["MailHost"];
            smtp.EnableSsl = Convert.ToBoolean(ConfigurationManager.AppSettings["MailEnableSsl"]);
            System.Net.NetworkCredential NetworkCred = new System.Net.NetworkCredential();
            NetworkCred.UserName = ConfigurationManager.AppSettings["MailUserName"];
            NetworkCred.Password = ConfigurationManager.AppSettings["MailPassword"];
            smtp.UseDefaultCredentials = true;
            smtp.Credentials = NetworkCred;
            smtp.Port = int.Parse(ConfigurationManager.AppSettings["MailPort"]);
            smtp.Send(mailMessage);
        }

        catch (MailException ex)
        {
            throw ex;
        }

        catch (Exception ex)
        {
            throw new MailException("Email sending failed", ex);
        }
    }
}

在应用配置文件中:

<add key="MailHost" value="Mail.myMail.com"/>
<add key="MailEnableSsl" value="true"/>
<add key="MailFrom" value="myEmailAddress"/>
<add key="MailUserName" value="MyUserName"/>
<add key="MailPassword" value="MyPassword"/>
<add key="MailPort" value="587"/>

<add key="MailTemplatePath" value="X:\MyFolder\email.html"/>
<add key="MailSubject" value="MyEmail Subject"/>

【问题讨论】:

    标签: c# exchange-server outlook-2010


    【解决方案1】:

    您是否尝试循环发送 10 条消息?还是您想一次将其发送给 10 个收件人?这听起来像是一个速率限制,您在使用公司 Exchange 或免费 Outlook.com 帐户时会收到此限制。

    我将使用专为提高吞吐量而设计的 SMTP 服务对此进行测试,例如 Rackspace Mailgun (http://www.mailgun.com/)。您可以免费发送 10,000 条消息。我将它用于我所有的联系表格以及通知、新闻通讯等。交付能力也更好。我会注册并换掉 SMTP 凭据。

    【讨论】:

    • 我正在尝试一次发送给 10 个收件人,但发送到单个电子邮件地址。数据在一个表中,所以我遍历用户 ID 并发送到每个用户的电子邮件地址。当我使用免费的网络帐户时,它可以工作。但是,该消息是保密的,我必须使用内部交换帐户。在与 IT 人员交谈之前,我只是想确定一下。
    • 这可能只是在消息之间等待一段合适的时间。以下是 Exchange 2013 (technet.microsoft.com/en-us/library/bb232205(v=exchg.150).aspx) 上限制的工作原理。你知道exchange的版本,你有没有通过上面的代码抛出异常?你能告诉我们消息吗?
    • 没有抛出异常,我可以发送一百条消息但我不能同时发送它们。没有例外。有什么办法可以让这个增量发送?
    猜你喜欢
    • 1970-01-01
    • 2016-09-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-27
    • 1970-01-01
    • 2015-01-25
    • 2018-10-27
    • 1970-01-01
    相关资源
    最近更新 更多