如何解决如何转换数据类型项?
我有一个包含12个项目的数据表,我需要更改第一列和第十列的数据类型
DataTable dtExcel = null;
dtExcel = GetExcelContainerFor<TBL_TICKETING_ALTERNATE_CREDIT_CARD_LIST>().ImportFromExcel(excelInput.DataVaultFileName,excelInput.IsHeaderRowExists);
所以dtExcel是包含12个项目的数据表
我正在遍历每个数据行,并尝试将其转换为Int32
dtExcel.Select().ToList().ForEach(dataRow =>
{
dataRow[0] = (Convert.ToInt32(dataRow[0]));
dataRow[9] = (Convert.ToInt32(dataRow[9]));
});
但是循环一旦结束,dtExcel数据表便具有其原始数据类型。
我也尝试了下面的编码,但是效果不佳(因为它抛出错误,因为它们无法转换数据类型)
DataTable newTable = dtExcel.Clone();
for (int i = 0; i < dtExcel.Rows.Count; i++)
{
DataRow drNew = newTable.NewRow();
newTable.Columns[0].DataType = typeof(Int32);
newTable.Columns[9].DataType = typeof(Int32);
drNew.ItemArray = dtExcel.Rows[i].ItemArray;
newTable.Rows.Add(drNew);
}
如何解决此问题? 我是否需要创建一个新的Datable并遍历每个项目,然后将每个项目转换并添加?(如果是),有人可以分享一个实现它的示例吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。