Range 对象中的 Min (5) 必须小于或等于 max (-1)?
Min (5) must be less than or equal to max (-1) in a Range object?
我在 datatable
中使用 Select
时在内部 foreach
中遇到错误。
这是我目前试过的代码
foreach (DataRow drOuter in dtLogic.Select("Name='>' OR Name='='"))
{
foreach (DataRow drInner in dtLogic.Select("ParentId=" + Convert.ToInt64(drOuter["Id"]) + ""))
{
}
}
其中 Convert.ToInt64(drOuter["Id"])
在我签入 Immediate Window
时的值为 2107362180
。
那为什么会抛出下面的错误呢?
您应该检查字符串而不是数字,因此在查询中插入单引号 expr='string'
foreach (DataRow drInner in dtLogic.Select("ParentId='" + Convert.ToInt64(drOuter["Id"]) + "'"))
{
}
在此编辑之后,您可以替换为@Christos 的回答
Convert.ToInt64(drOuter["Id"])
与
drOuter["Id"].ToString()
我在 datatable
中使用 Select
时在内部 foreach
中遇到错误。
这是我目前试过的代码
foreach (DataRow drOuter in dtLogic.Select("Name='>' OR Name='='"))
{
foreach (DataRow drInner in dtLogic.Select("ParentId=" + Convert.ToInt64(drOuter["Id"]) + ""))
{
}
}
其中 Convert.ToInt64(drOuter["Id"])
在我签入 Immediate Window
时的值为 2107362180
。
那为什么会抛出下面的错误呢?
您应该检查字符串而不是数字,因此在查询中插入单引号 expr='string'
foreach (DataRow drInner in dtLogic.Select("ParentId='" + Convert.ToInt64(drOuter["Id"]) + "'"))
{
}
在此编辑之后,您可以替换为@Christos 的回答
Convert.ToInt64(drOuter["Id"])
与
drOuter["Id"].ToString()