我是个菜鸟 能不能帮我看看为什么不会跳转Admin页面
string admin=txtName .Text .Trim ();
string passWord=txtPassWord .Text .Trim ();
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=.;Initial Catalog=Admin;Integrated Security=True";
try
{
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SELECT * FROM Administrator";
cmd.Connection = conn;
SqlDataReader data;
data = cmd.ExecuteReader();
while (data.Read())
{
if (data.GetValue(0).ToString() == admin && data.GetValue(1).ToString() == passWord)
{
Response.Redirect("Admin.aspx");
}
}
data.Close();
conn.Dispose();
}
catch (SqlException ex)
{
Response.Write(ex.Message);
}
求助
------解决方案--------------------加多一个trim()函数试试,可能是有空格影响
if (data.GetValue(0).ToString().trim() == admin && data.GetValue(1).ToString().trim() == passWord)
------解决方案--------------------
那就是我说的啊,改成varchar(10)。
------解决方案--------------------最简单的是用goodsoft的方法ToString().Trim().Equals(admin)来判断。
还有个问题就是,如果直接Redirect,会导致数据库未关闭。最终可能会导致连接池满的结果。
------解决方案--------------------
至于你在那里怎么调用方法过去你应该知道了把.