C#电子邮件警报没有接收到新代码

本文关键字:新代码 代码 电子邮件 | 更新日期: 2023-09-27 17:59:26

我有以下代码,用于在上传摘录时向大约60个用户发送电子邮件警报。无论发生了什么奇怪的事情,它都会发送到以前的查询结果,而不是新的查询结果。唯一的区别是以前它只发送给少数人的用户数量,现在它发送给了更大的数量。但在数量较大的代码上,应用程序似乎没有看到它已经更改并发送给以前的用户。就像它缓存的查询之类的。我不知道发生了什么。但当我把它改为一个电子邮件地址时,它会很好地接收更改。

  if (Session["ExtractNo"].ToString() == "Extract 1")
            {
                //Connection String (SendEmail)
                string SendEmail = ConfigurationManager.ConnectionStrings["SendEmail"].ConnectionString;
                SqlDataReader reader;
                String SendMessage = "SELECT Name, Position, Email FROM AuthorisedStaff Where Position = 'CM' or Position = 'DHOD' or Position = 'HOD'"; //<---- change position before launch
                using (SqlConnection myConnection = new SqlConnection(SendEmail))
                {
                    myConnection.Open();
                    SqlCommand myCommand = new SqlCommand(SendMessage, myConnection);
                    ArrayList emailArray = new ArrayList();
                    reader = myCommand.ExecuteReader();
                    var emails = new List<EmailCode>();
                    while (reader.Read())
                    {
                        emails.Add(new EmailCode
                        {
                            Email = Convert.ToString(reader["Email"]),
                            Name = Convert.ToString(reader["Name"]),
                            Position = Convert.ToString(reader["Position"])
                        });
                    }
                    foreach (EmailCode email in emails)
                    {
                        //Email Config
                        const string username = "roll@test.co.uk"; //account address
                        const string password = "######"; //account password
                        SmtpClient smtpclient = new SmtpClient();
                        MailMessage mail = new MailMessage();
                        MailAddress fromaddress = new MailAddress("roll@test.co.uk", "PTLP"); //address and from name
                        smtpclient.Host = "omavex11";  //host name for particular email address
                        smtpclient.Port = 25; //port number for particular email address
                        mail.From = fromaddress;
                        mail.To.Add(email.Email);
                        mail.Subject = ("PTLP Check");
                        mail.IsBodyHtml = true;
                        //change context of message below as appropriate
                        mail.Body = HttpUtility.HtmlEncode(email.Name) + " <br /> <p>Part Time Lecturer Payroll details are now available for checking.  If any changes need made please notify MIS as soon as possible. </p> <p>Please ensure all Adjustments have also been submitted.  All Adjustments not submitted on time will be paid the following month. </p>    ";

                        //smtpclient.EnableSsl = true;
                        smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
                        smtpclient.Credentials = new System.Net.NetworkCredential(username, password);
                        smtpclient.Send(mail);
                    }
                }
            }

C#电子邮件警报没有接收到新代码

在添加新项目/对象之前,请先尝试清除列表我认为这个

var emails = new List<EmailCode>();

是列表。