如何解决错误“您指定了无效的列序数”
本文关键字:无效 序数 何解决 解决 错误 | 更新日期: 2023-09-27 18:15:33
我得到以下错误:
您指定了一个无效的列序数
我已经检查了数据库中的列号,我知道它是正确的。下面是我的代码:
using (MySqlCommand cmd = new MySqlCommand(query, con))
{
cmd.Parameters.AddWithValue("@ID", txtboxID.Text);
MySqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
int size = dr.GetInt32(3);
int quantity = dr.GetInt32(4);
string variant = dr.GetString(2);
DataGridViewRow row = dataGridView2.Rows
.Cast<DataGridViewRow>()
.Where(r => (r.Cells["variant_name"].Value.ToString().Equals(variant) && r.Cells["size"].Value.Equals(size)))
.First();
row.Cells["quantity"].Value = quantity;
}
}
我在这一行得到错误-> int size = dr.GetInt32(3);
您的查询返回三列,列序数是基于0的,所以您的序数将是0、1和2,如下所示:
int size = dr.GetInt32(1);
int quantity = dr.GetInt32(2);
string variant = dr.GetString(0);
查询返回variant_name
、size
和quantity
的顺序为(0、1和2)。