Range(5)在Range对象中必须小于或等于max(-1)?

时间:2015-01-05 11:28:29

标签: c# datatable datatable.select

我在foreach中使用Select时在内部datatable收到错误。

这是我到目前为止尝试的代码

foreach (DataRow drOuter in dtLogic.Select("Name='>' OR Name='='"))
{
     foreach (DataRow drInner in dtLogic.Select("ParentId=" + Convert.ToInt64(drOuter["Id"]) + ""))
     {  

     }
}

我在Convert.ToInt64(drOuter["Id"])签到时2107362180的值为Immediate Window
那为什么会抛出以下错误?

enter image description here

1 个答案:

答案 0 :(得分:11)

您应检查字符串而不是数字,因此请在查询expr='string'

中插入单引号
foreach (DataRow drInner in dtLogic.Select("ParentId='" + Convert.ToInt64(drOuter["Id"]) + "'"))
{  

}

在此编辑后,您可以替换@Christos回答说

Convert.ToInt64(drOuter["Id"])

drOuter["Id"].ToString()