try
{
SqlCommand sqlSelectCommand1 = new SqlCommand();

this.sqlDataAdapter1.SelectCommand = sqlSelectCommand1;
sqlSelectCommand1.CommandText="SELECT username,password  FROM users WHERE username='"+tbxUsername.Text+"'and password='"+tbxPassword.Text+"'";

sqlSelectCommand1.Connection = this.Conn;
Conn.Open();
DataSet objDataset;
   objDataset=new DataSet();
sqlDataAdapter1.Fill(objDataset, "CommandText");


if(objDataset.Tables[0].Rows.Count!=0)
{
if(objDataset.Tables[0].Rows[0].ItemArray[0].ToString()==tbxUsername.Text && objDataset.Tables[0].Rows[0].ItemArray[1].ToString()==tbxPassword.Text)  
{
this.Session.Add("username",objDataset.Tables[0].Rows[0].ItemArray[0]);
this.Response.Redirect("realhome.aspx");

}



}
else
{
// btnLogin.Attributes.Add("onclick","alert('dsfdsds!')");
Response.Write("<script language=\"javascript\">alert(\"输入的用户名或密码有错!!\");</script>");
}
}
catch(SqlException ex)
{
// btnLogin.Attributes.Add("onclick","alert(ex.)");
Response.Write("<script language=\"javascript\">alert(\"输入的用户名或密码有错!!\");</script>");
}
finally
{
Conn.Close();
}

解决方案 »

  1.   

    先声明我也是个菜鸟,不过这个问题我用了很多次了。SqlCommand mCMD;
    SqlConnection mCN=new SqlConnection(连接字符串);try
    {
      if(mCN.State==ConnectionState.Closed)
      {
       mCN.Open();
      }
       mCMD=new SqlCommand("SELECT username,password  FROM users WHERE username='"+tbxUsername.Text+"'and password='"+tbxPassword.Text+"'";
    ,mCN);
       SqlDataReader mDR=mCMD.ExecuteReader();
       mCMD.Dispose();
       if(mDR.Rows)//查询到存在
      {
          mDR.Close();
          Session["username"]=tbxUsername.Text;//读的时候 username=Session["username"].ToString;
          Response.Redirect("realhome.aspx");//也可以Server.Transfer("realhome.aspx")
       }
       else
       {
         Response.Write("<script language=\"javascript\">alert(\"输入的用户名或密码有错!!\");</script>");   }
      }
      catch(System.Data.SqlClient.SqlException err)
      {
         mDR.Close();
         mCN.Close();
         throw new Exception("打开数据库出错"+err);
      }
      

  2.   

    更简单的方法是,写一个公共类把所有的数据库操作方法放到那个类中,要用的时候先实例化那个类,再调用方法就行。
    那上面语句就可以很简单了。
    string SQL="";//你的语句
    SqlDataReader mDR=你的实例对象.你的方法名(SQL);
    if(mDR.Rows)//查询到存在
      {
          mDR.Close();
          Session["username"]=tbxUsername.Text;//读的时候 username=Session["username"].ToString;
          Response.Redirect("realhome.aspx");//也可以Server.Transfer("realhome.aspx")
       }
       else
       {
         Response.Write("<script language=\"javascript\">alert(\"输入的用户名或密码有错!!\");</script>");   }
      

  3.   

    if(mDR.Rows)//查询到存在这句IF好象有问题! 因为C#在IF里面是只会判断TRUE 或者 FALSE 不会把0 或者 1转为TRUE 或者 FALSE!