刚下载了一个OA系统源码。
但出现了如题上的错误。代码如下。
public static DataTable ConvertDataReaderToDataTable(SqlDataReader dataReader)
{
DataTable datatable = new DataTable();
DataTable schemaTable = dataReader.GetSchemaTable();
//动态添加列
try
{
foreach(DataRow myRow in schemaTable.Rows)
{
DataColumn myDataColumn = new DataColumn();
myDataColumn.DataType = myRow.GetType();
myDataColumn.ColumnName = myRow[0].ToString();
datatable.Columns.Add(myDataColumn);
}
//添加数据
while(dataReader.Read())
{
DataRow myDataRow = datatable.NewRow();
for(int i=0;i<schemaTable.Rows.Count;i++)
{
myDataRow[i] = dataReader[i].ToString();(提示这行出错) }
datatable.Rows.Add(myDataRow);
myDataRow = null;
}
schemaTable = null;
dataReader.Close();
return datatable;
}
catch(Exception ex)
{
///抛出类型转换错误
throw new Exception("转换出错出错!",ex);
}请大侠们解决一下。。谢谢。。最好说明一下原因。
但出现了如题上的错误。代码如下。
public static DataTable ConvertDataReaderToDataTable(SqlDataReader dataReader)
{
DataTable datatable = new DataTable();
DataTable schemaTable = dataReader.GetSchemaTable();
//动态添加列
try
{
foreach(DataRow myRow in schemaTable.Rows)
{
DataColumn myDataColumn = new DataColumn();
myDataColumn.DataType = myRow.GetType();
myDataColumn.ColumnName = myRow[0].ToString();
datatable.Columns.Add(myDataColumn);
}
//添加数据
while(dataReader.Read())
{
DataRow myDataRow = datatable.NewRow();
for(int i=0;i<schemaTable.Rows.Count;i++)
{
myDataRow[i] = dataReader[i].ToString();(提示这行出错) }
datatable.Rows.Add(myDataRow);
myDataRow = null;
}
schemaTable = null;
dataReader.Close();
return datatable;
}
catch(Exception ex)
{
///抛出类型转换错误
throw new Exception("转换出错出错!",ex);
}请大侠们解决一下。。谢谢。。最好说明一下原因。
解决方案 »
- ASPXGridView如何設置固定高度
- asp.net数据库查询问题
- 系统架构,如何抽象出通用的模块?实现通用化?
- DataGrid模板列利用HyperLink进行URL传参时DataGrid1_ItemCommand事件触发问题
- (超级奇怪)日期显示问题
- 如何获得datagrid或gridview中选定单元的列名? 没有找到CurrentCell属性 ,C# 和.net环境
- js的一个小问题
- FormsAuthentication问题,请指教
- 请教一个问题
- 有对dropdownlist控件马?哪一个?如何设置?
- Datalist中使用LingButton,怎么实现鼠标放上去后,LingButton变色
- 多个dropdownlist控件的使用
while(dataReader.Read())
{
DataRow myDataRow = datatable.NewRow();
for(int i=0;i<schemaTable.Rows.Count;i++)
{
myDataRow[i] = dataReader[i].ToString();(提示这行出错)[/color] }
datatable.Rows.Add(myDataRow);
myDataRow = null;
}
出错提示就是如题:
System.ArgumentException: 值类型与列类型不匹配
这个错误啊。