public int ChooseQuery(clUsers cu)
        {
            if (cu.Type == "Username")
            {
                adp = new SqlDataAdapter("select * from Users", con);
                builder = new SqlCommandBuilder(adp);
                ds = new DataSet("Users");
                adp.Fill(ds, "Users");
                foreach (DataRow dr in ds.Tables["Users"].Rows)
                {
                    if (dr["Username"].Equals(cu.UserName))
                    {                        
                        return 0;
                    }
                }
                return 1;
            }
            else
            {
                return 2;
            }
        }爲什麽我不返回0啊。我斷點dr中的值和我接收的值是相等的呀

解决方案 »

  1.   

    dr["Username"].ToString()==cu.UserName???
      

  2.   

    我一開始用的就是一樓的辦法,不行我才改Equals的
      

  3.   

    Equals比较的是类型(obkect)吧,为什么不用==?
      

  4.   

    foreach (DataRow dr in ds.Tables["Users"].Rows)
                    {
                        if (dr["Username"].Equals(cu.UserName))
                        {                       
                            return 0;
                        }
                    }
                    return 1; 
    return 1; 为什么加那?