是否有任何示例可以解释我从我的localhost服务器发送电子邮件?我写过这个例子,但它不起作用,错误是"发送邮件失败".
SmtpClient smtpClient = new SmtpClient();
smtpClient.Host = "localhost";
smtpClient.Port = 25;
smtpClient.EnableSsl = false;
smtpClient.Credentials = new NetworkCredential("mostang1970@yahoo.com", "secret");
smtpClient.Send("mostang1970@yahoo.com", "hadinematipartow@yahoo.com", "Let’s eat lunch!", "Lunch at the Steak House?");//here is the error
Run Code Online (Sandbox Code Playgroud)
我应该在web.config中做什么?
wal*_*her 24
在这里你去:) localhost-with-aspnet-without-smtp-server
让我知道它是否适合您的需要.
上面的链接不起作用,所以我会改进答案.
出于测试目的,我们可以使用如下的localhost:如何在ASP.NET中不使用配置SMTP测试电子邮件
如果链接再次关闭,基本上我们必须像这样修改web.config:
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="C:\Mails\"/>
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
和C#代码
MailMessage mailMessage = new MailMessage();
MailAddress fromAddress = new MailAddress("mail@mail.com");
mailMessage.From = fromAddress;
mailMessage.To.Add("mail@mail.com");
mailMessage.Body = "This is Testing Email Without Configured SMTP Server";
mailMessage.IsBodyHtml = true;
mailMessage.Subject = " Testing Email";
SmtpClient smtpClient = new SmtpClient();
smtpClient.Host = "localhost";
smtpClient.Send(mailMessage);
Run Code Online (Sandbox Code Playgroud)
这将输出一个文件到我们想要的目录.