【问题标题】:Asp.net 4.0 Sending EmailsAsp.net 4.0 发送电子邮件
【发布时间】:2013-06-17 12:35:50
【问题描述】:

我有一个 aspx 页面,其中我有这样的电子邮件字段

<input class="span12" type="text" placeholder="EMAIL" id="Email" name="Email" runat="server" />

在我的 Csharp 文件中,我有代码并使用 Request["Email"] 在访问者输入电子邮件地址时获取地址,可以是任何地址,因此我也想通过电子邮件发送给他们,我的代码如下所示,但它没有工作,我正在使用 .net 4.0,我可以在其中更改该动态电子邮件,无论我可以获取它并发送电子邮件。

private void SendEmail(int RefNum)
{
    var customerEmail = Request["Email"]; //getting value from aspx page.
    MailMessage ObjEmail = new MailMessage();
    ObjEmail.SendFrom = "carlaza@hotmail.ca";
    ObjEmail.SendTo = "zjaffary@hotmail.com";
    ObjEmail.SendCC = "jaffary_zafar@hotmail.com";
    ObjEmail.SendBCC =  customerEmail ;
    ObjEmail.Subject = "test Subject ";
    //Development
    //SmtpMail.SmtpServer = "tormail.corp.kkt.ca";
    //Production At Bell
    SmtpMail.SmtpServer = "tormail.corp.kkt.ca";

    ObjEmail.BodyFormat = MailFormat.Html;

    string strBody1 = "Test message " ;
    ObjEmail.Priority = MailPriority.High;

try {
    SmtpMail.Send(ObjEmail);
    lblResponse.Text = "Thank you for sending the form !";
    Response.AddHeader("Refresh", "2;URL=index.aspx");

    }

    catch (Exception exc){
    Response.Write("Send failure: " + exc.ToString());
    }

}

【问题讨论】:

  • 什么不起作用?异常消息是什么?
  • 您似乎没有设置邮件正文?只声明它

标签: asp.net


【解决方案1】:

您应该使用来自网络邮件服务器的身份验证信息。 (用户名和密码)如果不是,那不是真正的电子邮件。

【讨论】:

    【解决方案2】:

    可以看到代码,可以工作

    SmtpClient SmtpServer = new SmtpClient("smtp.live.com");
    var mail = new MailMessage();
    mail.From = new MailAddress("youremail@hotmail.com");
    mail.To.Add("to@gmail.com");
    mail.Subject = "Test Mail - 1";
    mail.IsBodyHtml = true;
    string htmlBody;
    htmlBody = "Write some HTML code here";
    mail.Body = htmlBody;
    SmtpServer.Port = 587;
    SmtpServer.UseDefaultCredentials = false;
    SmtpServer.Credentials = new System.Net.NetworkCredential("youremail@hotmail.com", "password");
    SmtpServer.EnableSsl = true;
    SmtpServer.Send(mail);
    

    请看主题。我认为这对你有帮助。 How to add smtp hotmail account to send mail How to add smtp hotmail account to send mail

    【讨论】:

      【解决方案3】:

      试试这个

          protected void sendEmail(string subject, string ToEmail, string msg)
          {
              String body = msg;
              SmtpClient smtpClient = new SmtpClient();
              MailMessage message = new MailMessage();
              MailAddress fromAddress = new MailAddress("your_email_id");
              smtpClient.Host = "smtp.gmail.com";//host
              smtpClient.Port = 587;//port no. default 25
              smtpClient.UseDefaultCredentials = false;
              smtpClient.EnableSsl = true;
              smtpClient.Credentials = new System.Net.NetworkCredential("your_email_id", "password");
              message.From = fromAddress;
              message.To.Add(ToEmail);//if more than comma seprated
              message.Subject = subject;
              message.Priority = MailPriority.High;
              message.Body = body;
              message.IsBodyHtml = true;
              smtpClient.Send(message);
          }
      

      【讨论】:

        猜你喜欢
        • 2012-12-11
        • 2016-09-15
        • 1970-01-01
        • 2012-07-27
        • 2012-11-17
        • 1970-01-01
        • 1970-01-01
        • 2012-06-11
        • 2011-05-24
        相关资源
        最近更新 更多