日期:2014-05-17 浏览次数:20797 次
for(;;) { menuId=Convert.toInt32(DBHelper.ExecuteScalar("select PId from MenuType where level="+menuId)); if(menuId!=0) level++; else return level; }
------解决方案--------------------
楼主是不是原方法写错了?
这一句
DBHelper.ExecuteScalar("select PId from MenuType where level="+menuId))
应该是
DBHelper.ExecuteScalar("select PId from MenuType where level="+level))
吧?
public int GetLevel(int menuId){
for(level=1;level++;level>0)
{
menuId=Convert.toInt32(DBHelper.ExecuteScalar("select PId from MenuType where level="+level));
if(menuId!=0)
break;
}
return level;
}
------解决方案--------------------
for(;;) { menuId=Convert.toInt32(DBHelper.ExecuteScalar("select PId from MenuType where level="+menuId)); if(menuId!=0) level++; else return level; }
------解决方案--------------------
楼上不错
------解决方案--------------------
楼主代码是不是没贴完整,如果select PId from MenuType where level="+menuId这个得到的值不为0,那就无限循环。
------解决方案--------------------