我想在我的Windows系统上使用auth创建一个SMTP服务器。出于测试原因,我不想从互联网上下载另一个SMTP工具,因此我尝试直接在代码中发送电子邮件(仅用于调试)。我的代码目前:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Mail;
namespace smttest
{
class Program
{
static void Main(string[] args)
{
SmtpClient smtpClient = new SmtpClient();
NetworkCredential basicCredential =
new NetworkCredential("username", "password");
MailMessage message = new MailMessage();
MailAddress fromAddress = new MailAddress("from@dnet.com");
smtpClient.Port = 26;
smtpClient.Host = "localhost";
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = basicCredential;
message.From = fromAddress;
message.Subject = "testmail";
//Set IsBodyHtml to true means you can send HTML email.
message.IsBodyHtml = true;
message.Body = "testmail from sharp";
message.To.Add(new MailAddress("my@email.com"));
try
{
smtpClient.Send(message);
}
catch(Exception ex)
{
//Error, could not send the message
Console.Write(ex.Message);
Console.ReadLine();
}
}
}
}
cmd只显示我:发送电子邮件时出错(翻译自德语)。我不知道如何解决这个问题。
答案 0 :(得分:0)
您使用localhost作为SMTP服务器。它是电子邮件服务器吗?如果没有,则无法使用SMTPClient发送电子邮件。您需要一个像smtp.google.com这样的SMTP服务器
答案 1 :(得分:-1)