这个错误怎么解决??
private void FormOrders_Load(object sender, System.EventArgs e)
{
//创建连接对象
SqlConnection conn = new SqlConnection("user id=sa;data source=\"sun\";initial catalog=Northwind;password=123");
string sqlStatement = "select * from orders where CustomerID = @ID ORDER BY OrderID";
SqlCommand sqlcmd = new SqlCommand(sqlStatement,conn);
//设置参数
sqlcmd.Parameters.Add("@ID",CustomerID);
conn.Open();
SqlDataReader sdr = sqlcmd.ExecuteReader(); //执行SQL语句
int cols = sdr.FieldCount;//获取结果行中的列数
lvOrders.BeginUpdate();//向列表视图添加列表头
for ( int i = 0; i<cols; i++)
{
lvOrders.Columns.Add(sdr.GetName(i),100,HorizontalAlignment.Left);
}
string[] lvitem = new string[ cols ];
object[] values = new object[ cols ];
//向列表视图中添加列表项
while(sdr.Read())
{
sdr.GetValue(values); //读取一行
for(int i = 0;i<values.Length; i++)
lvitem[i] = values[i].ToString();
ListViewItem lvi = new ListViewItem(lvitem);
lvOrders.Items.Add(lvi);
}
lvOrders.EndUpdate();
sdr.Close();
conn.Close();
}
—————————————————————————————————————————
调试时出错如下:
1、C:\Documents and Settings\Administrator\My Documents\Visual Studio Projects\MyTest\FormOrders.cs(120): 与“System.Data.SqlClient.SqlDataReader.GetValue(int)”最匹配的重载方法具有一些无效参数
2、C:\Documents and Settings\Administrator\My Documents\Visual Studio Projects\MyTest\FormOrders.cs(120): 参数“1” : 无法从“object[]”转换为“int”