1。你的userid列是否为整型?这个应该不是问题所在
2。你那条SQL语句是否有符合的记录?如果没有dbcommand.ExecuteScalar();返回的应该是null,所以这个时候进行转换就出现了这种错误。

解决方案 »

  1.   


    userid是整型,sql也有相符合的记录
    但总是报这错
      

  2.   

    那出错的时候会中断在那个语句上,你把dbcommand.ExecuteScalar();选中,右键-》监视(具体不太记得)
      

  3.   

     dbcommand.CommandText = "select userid from resume where name='" + username + "'and idcard='" + idcard + "';";
    是不是多一个分号~
      

  4.   

    我写的判断用户名和身份证号是否注册,运行时不报错,但写完用户名和身份证号再写别的就弹出错误
    定位在int n = (int)dbcommand.ExecuteScalar();这一句
      

  5.   

    我的问题和这个差不多,但他没把最终解决方法说出来
    http://topic.csdn.net/u/20090523/09/b51b6f4c-ddc3-49c2-9c1a-6ef957449f4f.html