5

.net アプリケーションを介して smtp-relay を使用するサーバーから電子メールを送信することは可能ですか?

私は app.config を使用して、サーバーIPの実際の値と、電子メールが使用する必要があるfromadressを取得しています。

IT 技術者によると、smtp-relay を使用するため、承認するためのユーザー名とパスワードは必要ありません。電子メールを送信するコンピューターは、有効なコンピューターの smtp-servers リストに含まれています。

これは実際に機能しますか?ユーザー名/パスワードを指定する必要はありませんか?

try
{
    MailMessage mail = new MailMessage();
    SmtpClient SmtpServer = new SmtpClient(_smtpserver);
    mail.From = new MailAddress(_fromAdress);
    mail.To.Add(_toAdress);
    mail.Subject = _subject;
    mail.Body = _body;
    mail.Priority = MailPriority.High;
    SmtpServer.Port = Convert.ToInt32(_port);
    SmtpServer.Credentials = new System.Net.NetworkCredential(_authUsername, _authPassword);
    SmtpServer.EnableSsl = true;
    SmtpServer.Send(mail);
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
}
4

3 に答える 3

3

スニペットでは、資格情報を指定しています

SmtpServer.Credentials = new System.Net.NetworkCredential(_authUsername, _authPassword);

あなたが言ったようにSMTPリレーが設定されていれば、その行を削除しても機能します。

于 2012-09-24T11:36:38.440 に答える
0

あなたの場合、webconfigでユーザー名とパスワードを設定している場合でも、上記のように呼び出す必要があります。ただし、デフォルトのメール資格情報を使用している場合は自動的に選択されます..送信者に異なるメールクライアントを使用している場合は、資格情報を渡す必要があります..

于 2012-09-24T11:45:58.250 に答える