string con = ConfigurationSettings.AppSettings["SqlConnectionString"];
SqlConnection conn = new SqlConnection(con);
string sql_cp = "SELECT * FROM products WHERE id = '"+ Request.QueryString["id"] +"'";
SqlCommand cmd_cp = new SqlCommand(sql_cp,conn);
SqlDataReader rd = new SqlDataReader();
conn.Open();
rd = cmd_cp.ExecuteReader();
cpmc.Text = rd["产品名称"].ToString();
string cpmc = cpmc.Text;
conn.Close();
SqlConnection conn = new SqlConnection(con);
string sql_cp = "SELECT * FROM products WHERE id = '"+ Request.QueryString["id"] +"'";
SqlCommand cmd_cp = new SqlCommand(sql_cp,conn);
SqlDataReader rd = new SqlDataReader();
conn.Open();
rd = cmd_cp.ExecuteReader();
cpmc.Text = rd["产品名称"].ToString();
string cpmc = cpmc.Text;
conn.Close();
应该执行rd.Read().
cpmc既是控件的名称,又是变量的名称?
SqlConnection conn = new SqlConnection(con);
string sql_cp = "SELECT * FROM products WHERE id = '"+ Request.QueryString["id"] +"'";
SqlCommand cmd_cp = new SqlCommand(sql_cp,conn);
conn.Open();
SqlDataReader rd =cmd_cp.ExecuteReader();;
if(rd.Read() == true){
cpmc.Text = rd["产品名称"].ToString();
string Pcpmc = cpmc.Text;
}
conn.Close();改成这样为什么还不行?
不过我看是这个问题
修改为
string sql_cp = "SELECT * FROM products WHERE id = "+ Request.QueryString["id"] +"";
SqlConnection conn = new SqlConnection(con);
string rq = Request.QueryString["id"];
string sql_cp = "SELECT * FROM products WHERE id = " + rq;
SqlCommand cmd_cp = new SqlCommand(sql_cp,conn);
conn.Open();
SqlDataReader rd =cmd_cp.ExecuteReader();
if(rd.Read() == true){
cpmc.Text = rd["产品名称"].ToString();
string Pcpmc = cpmc.Text;
}
conn.Close();这样写没道理不行的,可那个cpmc.Text就是取不到值。
<a href='ShopOnline.aspx?id=<%# DataBinder.Eval(Container.DataItem,"id")%>'>在线订购</a>