MVCMailer smtp mailsettings以编程方式设置配置设置

wog*_*les 5 c# asp.net smtpclient mvcmailer asp.net-mvc-3

MVCMailer使用web.config文件中的smtp设置,如下所示:

<system.net>
<mailSettings>
      <smtp from="some-email@gmail.com">
        <network enableSsl="true" host="smtp.gmail.com" port="587" userName="some-email@gmail.com" password="valid-password" />
      </smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)

控制器:

public virtual MvcMailMessage Welcome()
{
    //ViewBag.Data = someObject;
    return Populate(x => {
              x.ViewName = "Welcome";
              x.To.Add("some-email@example.com");
              x.Subject = "Welcome";
        });
}
Run Code Online (Sandbox Code Playgroud)

无论如何在代码中设置SMTP设置?我想避免在web.config文件中保存密码.

jao*_*jao 10

SmtpClientWrapper使用具有所需属性的SmtpClient 调用.

SmtpClient client = new SmtpClient("mail.example.com", 995);
SmtpClientWrapper wrapper = new SmtpClientWrapper(client);
Run Code Online (Sandbox Code Playgroud)

  • 好吧我想出来了 - 你需要将包装器传递给Send方法.谢谢 :) (2认同)