A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. string sqlcon = "Server=.;Database=CSL;Uid=rawbol;Pwd=123456";
  2. string sqlquery1 = "select ID from ACCOUNT where ID='"+textBox1.Text+"'";
  3. con.Open();
  4. SqlCommand sqlc1 = new SqlCommand(sqlquery1, con);
  5. Object obj = sqlc1.ExecuteScalar();
  6. string str1 = textBox1.Text;
  7. string str2 = Convert.ToString( obj );
  8. //MessageBox.Show(str2);
  9. MessageBox.Show(Convert.ToString(obj.Equals("admin")));
复制代码
SQL查询结果为admin,MessageBox.Show(obj)显示结果为admin,但是MessageBox.Show(Convert.ToString(obj.Equals("admin")))显示结果却是false,为什么?????

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

1 个回复

倒序浏览
1. 因为MessageBox.Show(Convert.ToString(obj.Equals("admin")))中的obj是Object类型;
2. 而MessageBox.Show(Convert.ToString(obj.Equals("admin")))中的"admin"是string类型;
3. 任何Object类型都不等于任何string类型;
4. 所以并不是显示一样,值就相等的,需要进行拆箱操作,将obj强制转化为string 他们才相等。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马