I got it accept in my test it should only send 3 emails but it is sending 6 instead:
protected void Page_Load(object sender, EventArgs e)
{
string request = Request.QueryString["request"];
string requestLink = "<html>http://Default.aspx?request=" + request + "</html>";
ArrayList emailAddressList = new ArrayList();
string sqlString = "Select Application.ownerEmail, dbo.RequestItems.applicationProfile, dbo.RequestItems.emailToSystemAdmin from Application join dbo.ApplicationProfile on dbo.ApplicationProfile.application = dbo.Application.aAuid join dbo.RequestItems on dbo.RequestItems.applicationProfile = dbo.ApplicationProfile.apAuid where request = " + request;
string connString = ConfigurationManager.ConnectionStrings["UserAccessConnectionString"].ConnectionString;
SqlConnection sqlConn = new SqlConnection(connString);
SqlCommand sqlComm = new SqlCommand(sqlString, sqlConn);
sqlConn.Open();
SqlDataReader reader = sqlComm.ExecuteReader();
while (reader.Read())
{
emailAddressList.Add(reader["ownerEmail"].ToString());
string applicationProfile = reader["applicationProfile"].ToString();
bool emailToSystemAdmin = reader.GetBoolean(reader.GetOrdinal("emailToSystemAdmin"));
foreach (string emailAddress in emailAddressList)
{
if (emailAddress != "" && emailToSystemAdmin != true)
{
SendEmail(emailAddress, "The followiing link is provided to you to set up User Access for a new employee. Once IS sets up the network ID you can set-up access for this employee. Check back if network ID is not set-up yet. </br>" + requestLink);
string sqlString2 = "UPDATE RequestItems SET emailToSystemAdmin=1 where request= " + request + "and applicationProfile = " + applicationProfile;
string connString2 = ConfigurationManager.ConnectionStrings["UserAccessConnectionString"].ConnectionString;
SqlConnection sqlConn2 = new SqlConnection(connString2);
SqlCommand sqlComm2 = new SqlCommand(sqlString2, sqlConn2);
sqlConn2.Open();
sqlComm2.ExecuteNonQuery();
sqlConn2.Close();
}
}
}
reader.Close();
sqlConn.Close();
}
Help anyone? Please