我需要一些编码方面的帮助。我正在尝试通过电子邮件发送消息,但是尝试单击按钮并发送消息后,我一直收到错误消息。下面是代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net;
using System.Net.Mail;


namespace CO6009DissertationV5
{

    public partial class frmSendMsg : Form
    {

        public frmSendMsg()
        {
            InitializeComponent();
        }

        private void btnSend_Click(object sender, EventArgs e)
        {
            SmtpClient client = new SmtpClient();
            client.Host = "smtp.gmail.com";
            client.Port = 587;
            client.EnableSsl = true;

            System.Net.NetworkCredential userpassword = new System.Net.NetworkCredential();
            userpassword.UserName = "user@gmail.com";
            userpassword.Password = "password";

            client.Credentials = userpassword;

            MailMessage msg = new MailMessage("user@gmail.com", "user@gmail.com");
            **msg.To.Add(new MailAddress(txtBoxToEmail.Text));**
            msg.Body = "<b> Sender's Name: </b>" + txtBoxName.Text + "<p><b> Sender's E-mail: </b>" + txtBoxEmail.Text + "<p><b>Sender's Subject: </b>" + txtBoxSubject.Text + "<p><b>Sender's Message: </b>" + "<p>" + txtBoxMsg.Text;
            msg.Subject = txtBoxSubject.Text;
            msg.IsBodyHtml = true;

            try
            {
                client.Send(msg);
                lblMsgStatus.Text = "<p> Message Successfully Sent </p>";
            }

            catch (Exception ex)
            {
                lblMsgStatus.Text = "Send failed";
            }
        }
    }
}


主要问题似乎是这一行:

msg.To.Add(new MailAddress(txtBoxToEmail.Text));


由于项目一直在此处停止,因此出现错误行:


  {“参数'addresses'不能为空字符串。\ r \ n参数名称:地址”}。


任何帮助,将不胜感激。

最佳答案

仅当txtBoxToEmail.Text不是有效的电子邮件地址时,此行才能失败

msg.To.Add(new MailAddress(txtBoxToEmail.Text));


如果仍然不清楚,请用try-catch包装您的代码并评估异常详细信息

编辑:我看到您的编辑,我认为异常消息“参数'地址'不能为空字符串。\ r \ n参数名称:地址”非常清楚

10-07 18:55
查看更多