C# 如何将发件人地址设置为gmail以外的任何电子邮件地址(通过gmail在.NET中发送电子邮件)?
在这篇文章中,我们有一个通过gmail发送电子邮件的代码,在“发送邮件”字段中,我们找到了我使用的gmail帐户C# 如何将发件人地址设置为gmail以外的任何电子邮件地址(通过gmail在.NET中发送电子邮件)?,c#,.net,asp.net,email,gmail,C#,.net,Asp.net,Email,Gmail,在这篇文章中,我们有一个通过gmail发送电子邮件的代码,在“发送邮件”字段中,我们找到了我使用的gmail帐户 我使用相同的代码,但通过将发件人地址更改为任何电子邮件,我希望在凭证中设置gmail地址,如下所示 var fromAddress = new MailAddress("AnyEmai@mailserver.com", "From Name"); var toAddress = new MailAddress("to@example.com", "To Name"); const s
我使用相同的代码,但通过将发件人地址更改为任何电子邮件,我希望在凭证中设置gmail地址,如下所示
var fromAddress = new MailAddress("AnyEmai@mailserver.com", "From Name");
var toAddress = new MailAddress("to@example.com", "To Name");
const string fromPassword = "fromPassword";
const string subject = "Subject";
const string body = "Body";
var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential("from@gmail.com", fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
Subject = subject,
Body = body
})
{
smtp.Send(message);
}
但在发送的电子邮件中,gmail帐户仍显示在发件人地址和
AnyEmai@mailserver.com
不显示。。。有什么方法可以做到这一点吗?设计就是这样。您必须找到另一种发送出站电子邮件的方式,以便显示您想要的回信地址(我一直在那里,似乎没有办法伪造发件人地址)。是否检查此问题我认为这与您的查询有关。需要通过gmail从帐户设置中验证的电子邮件地址 请找到我的博客文章,详细描述了它,要遵循的步骤: 在执行上述所有步骤之前,您需要验证您的gmail帐户,以允许访问您的应用程序和设备。请通过以下链接检查帐户身份验证的所有步骤:
您可以使用邮件设置>>帐户和导入选项在您的gmail帐户中导入一个电子邮件id,该id可用于发送邮件,但是如果您希望每次都使用一些随机电子邮件id发送邮件,则不可能。Gmail会将其视为欺骗/垃圾邮件,并在发送邮件之前将邮件地址重置为原始邮件id
using System.Net;
using System.Net.Mail;
public void email_send()
{
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress("from@gmail.com");
mail.To.Add("to@gmail.com");
mail.Subject = "Your Subject";
mail.Body = "Body Content goes here";
System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment("c:/file.txt");
mail.Attachments.Add(attachment);
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential("from@gmail.com", "mailpassword");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
}
还有许多其他的邮件服务,你可以通过它们来实现同样的目的,但不是通过gmail。签出使用不同属性发送邮件的博客