我必须将DataTable
中特定列的整数值相加。
我做了什么:
DataTable dt = GetFilledDataTable();
foreach( var x in dt.AsEnumerable() )
{
z+=(int)x["ColumnName"];
}
我收到了错误:
指定的演员表无效
我完全相信,x["ColumnName"]
中的值为1445
解
正如@stuartd在他的评论中所说,我使用了int.Parse(x["columnName"].ToString())
答案 0 :(得分:2)
您可以遍历行,然后使用通用Field方法:
<a href="file:///C:/demoAttachments/demo.pdf" target="_blank">demo.pdf</a>
答案 1 :(得分:0)
只需使用Convert.ToInt32
代替cast:
DataTable dt = GetFilledDataTable();
foreach( var x in dt.AsEnumerable() )
{
z+=Convert.ToInt32(x["ColumnName"]);
}
如果您的值真的为int
,则会快速运行,如果是uint
则执行必要的转换,如果string
则进行解析。