C# 如何通过单击邮件按钮向gridview中单独列出的每个用户发送电子邮件?
目前整个网格正在发送给所有用户。我想分别向每个用户发送电子邮件,只有他们的数据应该通过电子邮件发送给他们 主页aspx。页面 在邮件按钮事件激发时,整个网格将发送给所有用户。 我想当邮件按钮事件触发时,首先它应该根据用户名从数据库中获取电子邮件地址,然后将邮件发送给网格中的第一个用户,然后再发送给第二个用户,依此类推 主页aspx.cs页C# 如何通过单击邮件按钮向gridview中单独列出的每个用户发送电子邮件?,c#,asp.net,sql-server-2008,gridview,smtp,C#,Asp.net,Sql Server 2008,Gridview,Smtp,目前整个网格正在发送给所有用户。我想分别向每个用户发送电子邮件,只有他们的数据应该通过电子邮件发送给他们 主页aspx。页面 在邮件按钮事件激发时,整个网格将发送给所有用户。 我想当邮件按钮事件触发时,首先它应该根据用户名从数据库中获取电子邮件地址,然后将邮件发送给网格中的第一个用户,然后再发送给第二个用户,依此类推 主页aspx.cs页 如何在GridView中显示用户?显示标记。另外,您提到的按钮是GridView的一部分还是位于GridView之外?按钮位于网格之外&用户在网格视图中根据其
如何在GridView中显示用户?显示标记。另外,您提到的按钮是GridView的一部分还是位于GridView之外?按钮位于网格之外&用户在网格视图中根据其任务显示。i、 用户名!项目名称!任务描述!是时候了!行动时间!完整的!按下按钮?它在GridView外面?是的,它在GridWok外面。然后您应该尝试在GridView行上循环,检查每行中的用户,发送邮件。。。
<asp:Button ID="mail" runat="server" Text="Mail" CssClass="button" OnClick="mail_Click" Style="margin-left: 10px; width: 100px; font-family: Verdana, Geneva, sans-serif;" />
protected void mail_Click(object sender, EventArgs e)
{
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter hw = new HtmlTextWriter(sw))
{
System.Web.UI.HtmlControls.HtmlForm frm = new System.Web.UI.HtmlControls.HtmlForm();
grdTask.Parent.Controls.Add(frm);
frm.Attributes["runat"] = "server";
frm.Controls.Add(grdTask);
grdTask.Columns[7].Visible = false;
frm.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
MailMessage mm = new MailMessage(AppSettings.FromMail, AppSettings.ToMail);
mm.Subject = "Today Status";
mm.Body = "Hi All, <br /> <br /> Below are the task detail for today:<br /> " + sw.ToString() + "<br /><br />Thanks<br />";
mm.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = AppSettings.SmtpHost; //"smtp.gmail.com";
smtp.EnableSsl = true;
System.Net.NetworkCredential NetworkCred = new System.Net.NetworkCredential();
NetworkCred.UserName = AppSettings.NetworkCredUsername;
NetworkCred.Password = AppSettings.NetworkCredPassword;
smtp.UseDefaultCredentials = true;
smtp.Credentials = NetworkCred;
smtp.Port = AppSettings.SmtpPort;//587;
smtp.Send(mm);
Response.Redirect("Home.aspx");
}
}
}