C# 如何在“联系我们”页面中使用用户电子邮件发送电子邮件?

C# 如何在“联系我们”页面中使用用户电子邮件发送电子邮件?,c#,asp.net,email,gmail,C#,Asp.net,Email,Gmail,我正在创建一个“联系我们”页面,我希望从该页面接收邮件,因为它的邮件来自用户邮件 我写了这段代码: var client = new SmtpClient("smtp.gmail.com", 587) { Credentials = new NetworkCredential("mymail@gmail.com", "password"), EnableSsl = true

我正在创建一个“联系我们”页面,我希望从该页面接收邮件,因为它的邮件来自用户邮件

我写了这段代码:

var client = new SmtpClient("smtp.gmail.com", 587)
                {
                    Credentials = new NetworkCredential("mymail@gmail.com", "password"),
                    EnableSsl = true
                };
                MailMessage mail = new MailMessage();
                mail.From = new MailAddress("userEmail@any.com");
                mail.To.Add(new MailAddress("mymail@gmail.com"));
                mail.Body = "bodyTest";
                mail.Subject = "subjectTest";
                client.Send(mail);
但是我从我的邮件接收邮件,而不是用户


如何做到这一点?

使用gmail,消息将来自登录用户,而不是“发件人”中的用户。你可以把你想要的任何东西放在from中,但它不能按你期望的方式工作


使用一个小型的免费谷歌应用程序帐户,我实际上建立了一个bot@example.com”“算了。我使用该帐户登录gmail,所以至少联系人邮件的发件人是这样。

我也遇到了同样的问题,对此有一种解决方法,您可以将发件人的电子邮件添加到属性中,这将提供回复该地址的选项。

您是否与其他smptserver/提供商进行过测试?否,因为我想让它和gmail一起工作,我以前测试过,它和不同的服务器一起工作,这对我来说是gmail的问题。这是gmail的一个安全功能,因此一个帐户不能像其他帐户那样发送电子邮件睫毛膏。上面的答案对gmail是正确的,例如,如果您使用的是Exchange Server,则可以将地址从更改为noreply@foobar.com但是对于GMail来说,它需要你的凭证登录作为发件人的电子邮件地址。你能详细介绍一下解决方法吗?我刚刚实现了一个“联系我们”页面,我觉得很烦人,因为我无法接收电子邮件,就好像它是从实际的发件人那里发送的一样。我们的邮件服务器是Google Apps Gmail。