1

MailMessage クラスを使用してメールを送信しています

 MailMessage msg = new MailMessage(fromAddr, toAddr);

新しい MailMessage オブジェクトを作成すると、fromAddr.for を使用してホストが自動的に取得されます。たとえば、fromaddress が chamara@pindoc.com.au の場合、ホストは pindoc.com.au と見なされますが、ホストの名前が異なります.so ホスト名が間違っています。そのため、次のエラーが発生していると思います。

{"メールボックスを利用できません。サーバーの応答は次のとおりです: 5.7.1 中継できません"} System.Exception {System.Net.Mail.SmtpFailedRecipientException}

どうすればこれを解決できますか?

4

3 に答える 3

3

あなたはあなたをチェックしましたmailSettingsか?以下の web.config の例:

<system.net>
    <mailSettings>
      <smtp deliveryMethod="Network" from="no-reply@yourdomain.com">
      <network defaultCredentials="true" host="mail.yourdomain.com" port="25"/>
   </smtp>
 </mailSettings>
</system.net>
于 2011-11-02T02:21:42.030 に答える
1

SmtpClient オブジェクトのインスタンスを作成するときにメール サーバーを指定できます (ポート番号や認証などのその他の詳細も同様です)。

SmtpClient client = new SmtpClient("different.hostname"); // specify your hostname
client.Send(msg);

web.config または app.config で smtp の詳細を指定することもでき、SmtpClient はこれらを自動的に取得します...

SmtpClient client = new SmtpClient();
client.Send(msg);
于 2011-11-02T02:22:40.017 に答える
0

通常、メッセージの送信にはSmtpClientを使用します。コンストラクターはホストとポートを取ります:

SmtpClient mailClient = new SmtpClient("mail.domain.com", 25);
mailClient.Send(msg);
于 2011-11-02T02:25:17.920 に答える