日期:2014-05-18  浏览次数:20428 次

一个很小的循环,我跳不出来了~大家帮帮忙!
public   SqlDataReader   ddliActiveId_Bind()
        {
                SqlConnection   myconnection   =   new   SqlConnection(sqlconn);
                SqlCommand   mycommand   =   new   SqlCommand( "DdliActiveIdBind ",   myconnection);
                mycommand.CommandType   =   CommandType.StoredProcedure;
                mycommand.Parameters.Add(new   SqlParameter( "@iActiveId ",   SqlDbType.Int,   4));
                int   iDCIDTemp;
                for   (int   i=0;i <GridView1   .Rows   .Count;i++)
                {
                GridViewRow   row=GridView1   .Rows   [i];
                iDCIDTemp=Convert.ToInt32   (((HiddenField   )row   .FindControl( "HiddenField1 ")).Value.ToString   ())   ;
                }
                mycommand.Parameters[ "@iActiveId "].Value   =   iDCIDTemp;
                myconnection.Open();
                SqlDataReader   dr   =   mycommand.ExecuteReader();
                return   dr;
                myconnection.Close();
              }
错误提示:使用了未赋值的局部变量“iDCIDTemp”
iDCIDTemp在循环函数中不时赋值了吗?怎么传不出来了!!!


------解决方案--------------------
int iDCIDTemp=0;
--------
应该给变量一个初始值,因为对于程序来说,并不能保证For循环里能对变量值进行设置。
------解决方案--------------------
楼上说的是。