如果我在给定 ID 的表中找到 3 个“是”,那么我将发送一封电子邮件。因此,您可以看到下面的代码使用查询字符串作为参数并在我的选择语句中使用它,但我想要做的是在 DetailView 中使用选定的 ID 而不是查询字符串。这是使用查询字符串的代码:
protected void Check_ItemUpdated(object sender, DetailsViewUpdatedEventArgs e)
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("SELECT count(*) from MyTable WHERE ID =@ID And (field1='Yes' And field2='Yes' And field3='Yes')", con);
cmd.Parameters.Add("@ID", Request.QueryString["ID"]);
cmd.Connection = con;
con.Open();
int result = (int)cmd.ExecuteScalar();
if (result == 1)
{
send email...
}
这是我修改并尝试使用DetailView ID但无法正常工作的更新代码,我在这里做错了什么请帮助:
protected void Check_ItemUpdated(object sender, DetailsViewUpdatedEventArgs e)
{
string ID = Detailview1.Rows[0].Cells[1].Text;
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("SELECT count(*) from MyTable WHERE ID =@ID And (field1='Yes' And field2='Yes' And field3='Yes')", con);
cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value = ID;
cmd.Connection = con;
con.Open();
int result =(int) cmd.ExecuteScalar();
if (result == 1)
{
send email...
}