0
当我运行我的代码标签保持不变,但是当我调试它,我可以看到文本的变化,然后当它完成捉迷藏为什么我的标签留更改
public void getData(string a)
{
SqlConnection conn = new SqlConnection(@"Data Source=MASSI\FABERSERVER;Initial Catalog=Data.mdf;Integrated Security=True");
conn.Open();
SqlCommand command = new SqlCommand("Select UserID,UserName,Email FROM Login Where UserName= '" + a + "'", conn);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
label1.Text = reader["UserID"].ToString();
label2.Text = reader["UserName"].ToString();
label3.Text = reader["Email"].ToString();
}
conn.Close();
}
WebForms?的WinForms? WPF? –
您可能仅在1行之后。在找到单行之后,您的While循环应该退出,并且还应该添加逻辑,以便在使用if(reader.HasRows)时找不到该行。这个链接讨论了一个更好的方法:http://stackoverflow.com/questions/7836517/enforce-only-single-row-returned-from-datareader但我想它有点高级。 – NoChance
您的应用程序对SQL注入开放。改用参数化查询。 –