柴油罐容表怎样计算:值类型与列类型不匹配

来源:百度文库 编辑:高校问答 时间:2024/05/09 04:25:01
以下代码在VS2003 .NET1.1中运行正常,而在VS2005中出错:
System.ArgumentException: 值类型与列类型不匹配

源错误: 行: 45

行 45: myDataRow[i] = dr[i].ToString();
行 46: }
行 47: datatable.Rows.Add(myDataRow.ItemArray);

代码:
DataTable datatable = new DataTable();
DataTable schemaTable = dr.GetSchemaTable();
foreach (DataRow myRow in schemaTable.Rows)
{
DataColumn myDataColumn = new DataColumn();
myDataColumn.DataType = myRow.GetType();
myDataColumn.ColumnName = myRow[0].ToString();
datatable.Columns.Add(myDataColumn);
}
//添加数据
while (dr.Read())
{
DataRow myDataRow = datatable.NewRow();
for (int i = 0; i < schemaTable.Rows.Count; i++)
{
myDataRow[i] = dr[i].ToString(); //出错行
}
datatable.Rows.Add(myDataRow.ItemArray);
myDataRow = null;
}
schemaTable = null;
dr.Close();

这么专业的东西我不太会,虽然我过去也学过

建议你到比较专业一点的BBS走走

比如“程序员之家”等等

(这里的人多数都是复制答案的。。。)