0
我有这样的代码:指定的转换无效时获取的DataColumn值
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"]);
“指定投无效“
我该怎么办?
尝试使用'TryParse'而不是隐式转换,程序防守。 – LukeHennerley