C# 如何将发件人地址设置为gmail以外的任何电子邮件地址(通过gmail在.NET中发送电子邮件)?

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发送电子邮件的代码,在“发送邮件”字段中,我们找到了我使用的gmail帐户
我使用相同的代码,但通过将发件人地址更改为任何电子邮件,我希望在凭证中设置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。签出使用不同属性发送邮件的博客