我在网站的公共类中定义了: 
public int FindUser(string UserName, string Password) 
    {  
        string conString = ConfigurationManager.ConnectionStrings["CCNSQLCONNECTIONSTRING"].ConnectionString; 
        
        SqlConnection con = new SqlConnection(conString); 
        
        string cmdText = "SELECT * FROM [Users]"; 
        
        SqlCommand cmd = new SqlCommand(cmdText, con); 
        
        int count = -1; 
        try 
        {  
            con.Open(); 
            
            count = cmd.ExecuteNonQuery(); 
        } 
        catch (Exception ex) 
        {  
            throw new Exception(ex.Message, ex); 
        } 
        finally 
        {  
            con.Close(); 
        } 
        return count; 
    } 
这些. 
    当我在进行断点调试时发现"count"的值一直没有变化(一直是"-1"),而我的数据库中的确存在3条记录. 
    我想了很久想不通...还请各路大侠指点我下,谢谢

解决方案 »

  1.   

    SqlCommand 去看看各个函数说明!
      

  2.   

    ExecuteNonQuery(); 
    方法是用执行Delete,Insert,Update的,不是用来进行Select.
      

  3.   

    同意3楼的,如果要判断用int count=Covert.toInt32(command.ExecuteScalar())
      

  4.   

    同意3楼,4楼说的 Sql语句要写成 select count(*) from users
      

  5.   

    确实是楼上的那样哦....ExecuteNonQuery()  返回你对更改数据库记录信息的操作所影响的记录数
      

  6.   

    ExecuteNonQuery()返回的是对数据库执行相应操作后返回的的受影响的行数,通常用于update ,delete ,insert操作,
    ExecuteScalar()返回的是结果集的第一行第一列对应的数据,通常用于select操作。