while (rdr.Read())
{
imgno = rdr.GetString(0);
}
HttpContext.Current.Response.Write(imgno);
此代码生成错误
(Error 5 Use of unassigned local variable 'imgno')
大概你在这个代码上面声明了变量,如下所示:
string imgno;
while (rdr.Read())
{
imgno = rdr.GetString(0);
}
HttpContext.Current.Response.Write(imgno);
编译器无法保证将永远进入循环。 实际上,在rdr
不返回任何记录的情况下,都会跳过循环。 在这种情况下,imgno
永远不会被分配一个值。 由于编译器无法保证这一点,因此代码无法编译。
只需为变量分配一个默认值:
string imgno = string.Empty;