【发布时间】:2017-08-08 06:36:54
【问题描述】:
我有一个使用 ASP.net 和 C# 的 Web 应用程序,在一个步骤中它需要 从用户到 向带有附件的人发送电子邮件。 我的问题是用户何时发送我不想发送的电子邮件 用户每次发送的密码。 我想发送一封没有发件人密码的电子邮件。 有什么方法可以使用 SMTP 做到这一点? 这是我的代码“不是全部”的示例。 当我输入密码时,代码可以正常工作,但没有它,它 行不通,我需要一种无需输入密码即可发送电子邮件的方法,但是 同时使用 smtp 协议。
private void button1_Click(object sender, EventArgs e)
{
string smtpAddress = "smtp.office365.com";
int portNumber = 587;
bool enableSSL = true;
string emailFrom = "my email";
string password = "******";
string emailTo = "receiver mail";
string subject = "Hello";
string body = "Hello, I'm just writing this to say Hi!";
using (MailMessage mail = new MailMessage())
{
mail.From = new MailAddress(emailFrom);
mail.To.Add(emailTo);
mail.Subject = subject;
mail.Body = body;
mail.IsBodyHtml = true;
// Can set to false, if you are sending pure text.
// mail.Attachments.Add(new Attachment("C:\\SomeFile.txt"));
// mail.Attachments.Add(new Attachment("C:\\SomeZip.zip"));
using (SmtpClient smtp = new SmtpClient(smtpAddress,portNumber))
{
smtp.UseDefaultCredentials = true;
smtp.Credentials = new NetworkCredential(emailFrom, password);
smtp.EnableSsl = enableSSL;
smtp.Send(mail);
}
MessageBox.Show("message sent");
}
}
【问题讨论】:
-
这将需要一个开放的中继,我怀疑这是否已经完成了,原因很明显。