0

ASP.NET で MailMessage を送信していますが、送信されません。私が使用しているコードは

message.To.Add(email1 + ", " + email2 + ", " + email3);

これを行うと、メールが届きません。ただし、このコードを使用すると:

message.To.Add(email1 + ", " + email2);

毎回問題なく送ってくれます。ここで何が起こっているか知っている人はいますか?3 つの電子メールはすべて (テスト目的で) 同じであり、デバッグ中に正しいことが確認されています。3 番目に別のメール アドレスを挿入しようとしましたが、それでも何も起こりません。私は明らかな何かを見逃しているかもしれません...

編集: 誰もがそれらを個別に追加するように言っています。これは、誰もが同意する場合に良いアドバイスになるかもしれません. 以前にこれをしなかった理由は、3 つの別々のアドレスで再試行したところ、どれも送信されませんでした。それがうまくいくはずなら、私は完全に別の問題を抱えているのでしょうか?

編集:将来同じ問題を抱えている人のために、私がやったことです。MailMessage を作成するときに、パラメーターを使用せずに作成し、代わりに From パラメーターを個別に指定しました。From と To のすべてのメールをラップするnew MailAddress()と、これらすべての変更の組み合わせが機能しているように見えました。

4

5 に答える 5

4

Add何回も電話するだけ。

于 2011-11-10T16:53:01.687 に答える
2

MailMessageのToプロパティはコレクションなので、 message.To.Add3 つのメールアドレスに送信したい場合は 3 回呼び出す必要があります。

于 2011-11-10T16:53:50.237 に答える
2

アドレス指定されたメールを 1 つの Add ステートメントに連結する代わりに、一度に 1 つずつ追加する必要があります。

message.To.Add(email1);
message.To.Add(email2);
message.To.Add(email3);

コレクションに追加しているので。

また、アドレスが同じ場合、関数は通常、私の経験ではそれを 2 回追加しません。これは、Mailmessage.To.Add 関数の動作である可能性があります。または、Outlook が重複を削除したときに、重複を除外しているように見えます。システムで同じことが表示される場合があります。

于 2011-11-10T16:55:34.460 に答える
2

試す

message.to.add(email1);
message.to.add(email2);
message.to.add(email3);
message.to.add(email4);

お役に立てれば

ハーヴェイ・サザー

于 2011-11-10T16:55:57.143 に答える
0

メッセージの受信者を web.config ファイルに保存し、次のように処理します

 string lstrDistributitionList = ConfigurationSettings.AppSettings["SMTP_DISTRIBUTION_LIST"];
                    string[] lastrDistributitionList = lstrDistributitionList.Split(';');

                    for (Int32 loopCounter = 0; loopCounter < lastrDistributitionList.Length; loopCounter++)
                    {
                        msg.To.Add(lastrDistributitionList[loopCounter]);
                    }

ハーヴェイ・サザー

于 2011-11-10T16:59:40.777 に答える