获取DataColumn值时指定的强制转换无效
本文关键字:转换 无效 DataColumn 获取 | 更新日期: 2023-09-27 18:24:35
我有一个这样的代码:
private void FillMenu()
{
int i;
string sql = "Select * from tblMenu where MenuGrup=1 order by SiraNo";
DataTable dt = ExecSqlDT(sql);
if (dt.Rows.Count == 0)
return;
for (i = 0; i <= dt.Rows.Count - 1; i++)
{
DevExpress.Web.ASPxNavBar.NavBarGroup xGrp = new DevExpress.Web.ASPxNavBar.NavBarGroup();
xGrp.Text = dt.Rows[i]["MenuAd"].ToString();
if (!dt.Rows[i]["HeaderResimUrl"].ToString().Equals(""))
xGrp.HeaderImage.Url = dt.Rows[i]["HeaderResimUrl"].ToString();
if (!dt.Rows[i]["ItemResimUrl"].ToString().Equals(""))
xGrp.ItemImage.Url = dt.Rows[i]["ItemResimUrl"].ToString();
if (!dt.Rows[i]["Genisletilmis"].ToString().Equals("1"))
{
xGrp.Expanded = false;
}
else
{
xGrp.Expanded = true;
}
ASPxNavBar1.Groups.Add(xGrp);
FillMenuGroup(xGrp, (long)dt.Rows[i]["MenuID"]);
}
}
当我运行我的项目时,它在这一点上崩溃了:
FillMenuGroup(xGrp, (long)dt.Rows[i]["MenuID"]);
"指定的强制转换无效"
我该怎么办?
您可以尝试一下,看看它是否有效:
FillMenuGroup(xGrp, Convert.ToInt64(dt.Rows[i]["MenuID"]));