用于发送电子邮件的C#代码而不太了解服务器配置?

Jon*_*han 9 c# email configuration smtp

有没有办法在C#代码中发送电子邮件而不必知道服务器上的SMTP服务器配置等,或者设置了这些东西?

我正在开发的代码将部署到实时服务器,但我对配置一无所知,因此我无法预测SMTP服务器将是什么.

Joh*_*han 11

将其添加到您的web.config(此处为MSDN参考):

<system.net>
    <mailSettings>
        <smtp deliveryMethod="Network" from="jdoe@example.com">
            <network host="localhost" port="25" />
        </smtp>
    </mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)

使用SmtpClient而不指定配置设置将使用web.config中的值:

MailMessage msg = new MailMessage(...);
// build message contents
SmtpClient client = new SmtpClient();
client.Send(msg);
Run Code Online (Sandbox Code Playgroud)


Ray*_*sen 1

最好的答案是,如果您在上线之前一无所知,您可以将所有设置移至 web.config 中吗?这将允许直到最后一刻才进行配置。下面是一些要转储到 web.config 文件中的代码。我想问为什么你无权访问这些信息

<system.net>
    <mailSettings>
      <smtp from="you@yourdomain.com">
        <network host="SMTP SERVER ADDRESS" port="25"
         userName="USERNAME" password="PASSWORD">
      </smtp>
    </mailSettings>
  </system.net>
Run Code Online (Sandbox Code Playgroud)