1

IIS7 を搭載した Windows Server 8 マシンを使用しています。

システムのユーザーに通知を送信する .NET Web アプリケーションで使用されるように、IIS7 で SMTP サーバーを構成しました。

SMTP サーバーはDeliver emails to SMTP server、ポートで、25を使用するように構成されています。localhostno authentication

私の問題は、電子メールが正しく送信されることですが、1 日またはそれ以上経過するまで送信されません。wwwroot からのピックアップ ディレクトリに電子メールが表示されますが、そのまま残ります。システムにとって、メールがすぐに送信されることは非常に重要です。

メールがすぐに送信されるようにするにはどうすればよいですか?

同様の問題に対処する質問を見つけました (その場合、電子メールはピックアップ ディレクトリから送信されませんでした。私の場合、電子メールは 1 日かそこら後に送信されます)非常に不完全なので、それが私の問題を解決するかどうかを確認できませんでした。

これは私が使用するコードです:

MailMessage mailMessage = new MailMessage();
mailMessage.To.Add(toEmail);
mailMessage.From = new MailAddress(fromEmail);
mailMessage.Subject = emailSubject;
mailMessage.Body = emailBody;
mailMessage.IsBodyHtml = true;

SmtpClient smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
smtpClient.Send(mailMessage);
4

1 に答える 1

0

電子メールを送信するコードを投稿できますか、または少なくとも IIS 設定を上書きしていないことを確認できますか? さまざまな SMTP プロパティがさまざまなレベルで設定されていますか? サーバーと Web サイトで可能性がありますか?

次のようなことを試すことができます。これにより、電子メールがピックアップ ディレクトリに保存されるのではなく、SMTP サービスによってすぐに送信されるようになります。

var smtpClient =
    new SmtpClient("127.0.0.1", 25)
    {
        UseDefaultCredentials = false
    };
于 2013-03-01T18:47:34.853 に答える