没有在用asp c创建的用户反馈表单中收到电子邮件#

时间:2015-12-30 15:56:09

标签: c# asp.net visual-studio-2010 email

我正在使用带有c#的asp.net创建用户反馈表。当用户在文本框中输入他的消息并单击输入按钮数据时,我没有收到数据消息的邮件..

这是我的代码: -

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail;
using System.Net;
public partial class FeedbackPage : System.Web.UI.Page
{

    public SmtpDeliveryMethod DeliveryMethod { get; set; }
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        MailMessage Message = new MailMessage();
        MailAddress To = new MailAddress(email.Text.ToString(),            name.Text.ToString());
        MailAddress From = new MailAddress("MyEmailId");
        Message.To.Add(To);
        Message.From = From;
        Message.Subject = subject.Text.ToString();
        Message.Body = msgg.Text.ToString();
        Message.IsBodyHtml = true;
        Message.SubjectEncoding = System.Text.Encoding.UTF8;
        SmtpClient smtp = new SmtpClient();
        smtp.Host = "smtp.gmail.com";
        smtp.Port = 587;
        smtp.UseDefaultCredentials = false;
        DeliveryMethod = SmtpDeliveryMethod.Network;
        System.Net.NetworkCredential cred = new System.Net.NetworkCredential("MyEmailId, "MyPassword");
        smtp.Credentials = cred;
        smtp.EnableSsl = true;
        try
        {
            smtp.Send(Message);
            Response.Write("Your msg has been snd");
        }
        catch (Exception ex)
        {
            Response.Write("Error!" + ex.Message.ToString());
        }
    }
}

1 个答案:

答案 0 :(得分:1)

看起来您正在将消息发送到用户输入的电子邮件地址。只有将它发送到您自己的地址,您才能获得它。

您应该做的是自己发送给自己,因为可能不允许用户的电子邮件地址使用您的smtp服务器,并将用户电子邮件放在主题行或正文中。

或者你可以使用mailto://myemail@mydomain.com链接。