这是我第一次编写发送邮件的程序。我不知道在SMTP客户端构造函数中应该放什么:
SmtpClient client = new SmtpClient(????);
有人能帮忙吗?
这是我第一次编写发送邮件的程序。我不知道在SMTP客户端构造函数中应该放什么:
SmtpClient client = new SmtpClient(????);
有人能帮忙吗?
请务必参考文档。 SmptClient 有三个构造函数。
SmtpClient()
SmtpClient(String)
SmtpClient(String, Int32)
如果您选择最后一个选项,您的代码将如下所示,适用于Gmail:SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
你还可以使用第一个构造函数并设置属性。
SmtpClient smtp = new SmtpClient();
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.Credentials = new NetworkCredential("<email_from>", "password");
smtp.Host = "smtp.gmail.com";
SmtpClient
构造函数,并在应用程序配置文件中的<smtp>
元素中指定主机和端口。using(var smtpClient = new SmtpClient())
{
...
}
<system.net>
<mailSettings>
<smtp deliveryMethod="network" from="ben@contoso.com">
<network
host="localhost"
port="25"
defaultCredentials="true"
/>
</smtp>
</mailSettings>
<system.net>
<smtp deliveryMethod="SpecifiedPickupDirectory" from="ben@contoso.com">
<network host="localhost"/>
<specifiedPickupDirectory pickupDirectoryLocation="C:\temp\mail\"/>
</smtp>
主机
和可选端口
。SmtpClient client = new SmtpClient("mail.domain.com", 123);
如需更多信息,您应阅读此类的MSDN文档:
http://msdn.microsoft.com/zh-cn/library/system.net.mail.smtpclient.aspx
这个话题有点偏离主题,但是支持现代电子邮件通过SMTP的最佳实践方法...
我建议始终使用支持TLS over SSL的服务,因为它提供更安全的传输。
如果您不熟悉TLS,@gideon提供了一个在GMail中使用TLS的示例,这里有一篇文章支持这种方法:C# ASP.NET通过TLS发送电子邮件