我正在创建一个gmail SMTP客户端,如下所示:
client = new SmtpClient();
client.UseDefaultCredentials = false;
client.Host = "smtp.gmail.com";
client.Port = 587;
client.EnableSsl = true;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Credentials = new NetworkCredential(email, password);
client.Timeout = 20000;
发一封这样的邮件:
MailMessage msg = new MailMessage();
msg.From = new MailAddress(myemail-no-reply@gmail.com);
msg.To.Add(to);
msg.Subject = subject;
msg.Body = body;
client.Send(msg);
我希望,如果有人回复我的电子邮件,它将转到管理员的电子邮件地址,而不是我的应用程序,而且理想情况下,他们甚至不知道应用程序的电子邮件地址的存在。
我可以让我的应用程序将收到的电子邮件转发给管理员,但这是一个丑陋的解决方案。
我从其他线程中了解到,无法发送带有“回复”字段的电子邮件。
我想知道的是,如果我有管理员的电子邮件作为应用程序的GMail帐户上的“发送邮件为”注册帐户。
所以通过GMail界面,我可以发送一封电子邮件,就像我是管理员一样,我可以从我的c#应用程序中这样做吗?
我知道我可以设置发送给管理员电子邮件的消息的“发件人”字段,但我想知道这是否是正确的方法,gmail是否支持这一点,以及电子邮件是否有更多的可能最终进入垃圾邮件文件夹。
我已经授权以管理员的身份在应用程序电子邮件中“发送邮件”,只需编辑要作为管理员电子邮件地址发送的“发件人”字段就可以完美地工作。
所以我想这是最简单的解决方案是正确的情况之一。
编辑:编辑“发件人”字段似乎不允许您从不同的地址发送邮件,但有效的方法是在GMail的“发送邮件为”选项中设置默认电子邮件,将电子邮件作为不同的电子邮件发送。