在尝试通过“联系我们”表单联系公司时识别发件人电子邮件ID

时间:2012-06-11 12:19:54

标签: c# asp.net email

我正在为公司网站构建Contact Us表单。我的要求是,当用户通过我们的Contact Us页面发送任何查询时,应将其发送到我们公司的电子邮件ID。请说{ {1}}。我收到了sales@mycompany.in个详细信息SMTP。 我之前尝试从gmail发送邮件它正在工作。 这是我的代码。

smtp.mycompany.in

此代码的问题在于,当我发送邮件时,它会在MailMessage mail = new MailMessage(); mail.From = new MailAddress(txtEmail.Text); mail.To.Add("sales@mycompany.in"); mail.Subject = "Mail from www.mycompany.in"; mail.Body = emailbody.ToString(); mail.IsBodyHtml = true; SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; //Or Your SMTP Server Address smtp.Credentials = new System.Net.NetworkCredential ("mycompany@gmail.com", "xxxxxx"); //Or your Smtp Email ID and Password // smtp.Port=80; smtp.EnableSsl = true; smtp.Send(mail); 收到,但它始终显示邮件来自sales@mycompany.in,而不是键入的电子邮件地址mycompany@gmail.com。知道这是因为我提供的gmail凭据。所以我问你们,我怎样才能让它工作,以便我知道发件人或联系我们的人的电子邮件ID。欢迎提出任何建议。 感谢。

2 个答案:

答案 0 :(得分:2)

理论

如果您使用的是Gmail SMTP,则无法“代表”其他人发送邮件 它也不允许您设置自定义回复地址。

如果您推出自己的SMTP服务器,那么你应该很好。

实践

让客户和支持人员减少痛苦的一种方法是建立一个票务系统 如果您愿意,您可以自己编写代码,或者使用plenty of existing ones中的任何一个。

答案 1 :(得分:2)

你不能这样做,因为有些人是abc@yahoo.com,其他人是xyz@hotmail.com,你不能把它发送到其他人的账户。

我的建议是在电子邮件正文中添加发件人的电子邮件地址,这封电子邮件的人正在联系我们,但我认为您尝试做的解决方案是不可能的。