string connectionString = @"Server=lcf; database=XSBOOK;Integrated Security=True";
            SqlConnection con = new SqlConnection(connectionString);
            con.Open();
            SqlCommand myCommand = new SqlCommand("StoredProcedure1", con);
            //调用存储过程名 
            myCommand.CommandType = CommandType.StoredProcedure;            //设置存储过程的参数值,其中@id 为存储过程的参数. 
            SqlParameter id1 = myCommand.Parameters.Add("@starttime", SqlDbType.DateTime);
            id1.Direction = ParameterDirection.Input;
            id1.SqlValue = "2012-05-30";
            SqlParameter id2 = myCommand.Parameters.Add("@endtime", SqlDbType.DateTime);
            id2.Direction = ParameterDirection.Input;
            id2.SqlValue = "2013-06-20";
            //SqlParameter[] spr = new SqlParameter[2];
            //spr[0] = new SqlParameter("@starttime", "2012-05-30");
            //spr[1] = new SqlParameter("@endtime", "2013-06-20");
            //myCommand.Parameters.Add(spr[0]);
            //myCommand.Parameters.Add(spr[1]);
            //myCommand.ExecuteNonQuery();
            //执行命令 
            //SqlDataReader reader = myCommand.ExecuteReader();//读取数据 
            string nn = "StoredProcedure1";
            SqlDataAdapter da = new SqlDataAdapter(nn, con);
            DataSet ds = new DataSet();
            da.Fill(ds, "XS");
            bindingSource1.DataSource = ds;
            bindingSource1.DataMember = "XS";
            //bindingSource1.Sort = "sno desc";
            dataGridView1.DataSource = bindingSource1;

解决方案 »

  1.   

    很明显 存储过程StoredProcedure1 没有定义这个参数@starttime
      

  2.   

    ALTER PROCEDURE StoredProcedure1
    (
    @starttime datetime, --你没有定义这个参数
    @endtime datetime
    )
    AS
    BEGIN
    .....................
    END
      

  3.   

     SqlConnection conn = new SqlConnection("Server=.; database=XSBOOK;Integrated Security=True");
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = "StoredProcedure1 ";
                cmd.CommandType = CommandType.StoredProcedure;            SqlParameter[] sqlparameters = new SqlParameter[2];            sqlparameters[0].ParameterName = "@starttime";
                sqlparameters[0].Value = "2012-05-30";
                sqlparameters[0].Direction = ParameterDirection.Input;            sqlparameters[1].ParameterName = "@endtime";
                sqlparameters[1].Value = "2012-06-30";
                sqlparameters[1].Direction = ParameterDirection.Input;            cmd.Parameters.AddRange(sqlparameters);            SqlDataAdapter sda = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                sda.Fill(ds, "XS");
      

  4.   

    没注意看你代码  只关注了错误信息   
    //string nn = "StoredProcedure1";
    //SqlDataAdapter sda = new SqlDataAdapter(nn, con);
    SqlDataAdapter sda = new SqlDataAdapter(myCommand);