FOR循环,未将对象引用到实例。解决方案

FOR循环,未将对象引用到实例。
本帖最后由 u3sljflsja 于 2014-05-29 12:07:50 编辑
     
 
 for (int i = Convert.ToInt32(XMLvalue.Value); i < Convert.ToInt32(ds.Tables["t4"].Rows[0][0].ToString().Trim()); i++)
 {
 try
     {
       SqlCommand scqb = new SqlCommand("delete from ManagerCD where layer='" + i + "'", connn);
         scqb.ExecuteNonQuery() ;
        }
 catch
      {
         continue;
      }

以上代码在执行过程中,这里 i = Convert.ToInt32(Hiddenfield1.Value)提示未将对象引用到实例。我认为是
错在这句"delete from ManagerCD where layer='" + i + "'"没有找到值。

我的意图是:从Hiddenfield1.Value这个值开始,在数据库中循环查找与Hiddenfield1.Value这个值循环加1的数匹配,如果匹配成功就删除,匹配不成功就继续执行下一条,直到最后一条。
比如:i=100,而在数据表中的layer字段没有匹配的项就执行i=101,以此类推……请问大神们,我怎么去改?
------解决方案--------------------
仔细检查每个对象,特别是ds.Tables["t4"].Rows[0][0]这类带索引的,肯定有空值
------解决方案--------------------
XMLvalue.Value???  Hiddenfield1.Value???到底是哪个  你确定这个值是整数型的?