【问题标题】:How to set From Address to any email other gmail in ( Sending Email in .NET Through Gmail )?如何将发件人地址设置为其他 gmail 中的任何电子邮件(通过 Gmail 在 .NET 中发送电子邮件)?
【发布时间】:2011-03-19 07:06:13
【问题描述】:

在这篇 Sending Email in .NET Through Gmail 的帖子中,我们有一个通过 gmail 发送电子邮件的代码,在我们从 Field 找到的发送邮件中包含我使用的 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 帐户仍然出现在 From Address 中,而 AnyEmai@mailserver.com 没有出现...有什么办法吗?

【问题讨论】:

    标签: c# .net asp.net email gmail


    【解决方案1】:

    设计就是这样。您必须找到另一种发送出站电子邮件的方式,以便显示您想要的回信地址(我去过那里,似乎没有办法欺骗发件人地址)。

    【讨论】:

      【解决方案2】:

      你要不要检查这个问题change sender address when sending mail through gmail in c#
      我认为这与您的询问有关。

      【讨论】:

        【解决方案3】:

        您可以使用 Mail Settings >> Accounts 和 Import 选项在您的 gmail 帐户中导入电子邮件 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。查看博客Send email in .NET through Gmail,了解使用不同属性发送邮件。

        【讨论】:

          【解决方案4】:

          邮箱地址需要通过gmail从账户设置中验证。

          请在我的博客文章中找到相同的详细描述,要遵循的步骤:

          http://karmic-development.blogspot.in/2013/10/send-email-from-aspnet-using-gmail-as.html

          在执行上述所有步骤之前,您需要验证您的 gmail 帐户以允许访问您的应用程序和设备。请在以下链接查看帐户认证的所有步骤:

          http://karmic-development.blogspot.in/2013/11/allow-account-access-while-sending.html

          【讨论】:

            猜你喜欢
            • 2010-09-07
            • 2011-07-21
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多