asp.net,无法将类型为“System.Int32”的对象强制转换为类型“System.String”。

来源:百度知道 编辑:UC知道 时间:2024/06/18 04:31:24
大家好,我是刚接触.NET的一个小白,今天照书上的例子写了一段代码,老是提示我无法将类型为“System.Int32”的对象强制转换为类型“System.String”。请问,到底是怎么回事啊,已经快疯了。。。。
代码如下:
SqlDataReader sdr = cmd.ExecuteReader();

Response.Write(sdr.FieldCount.ToString());

Response.Write("<br>");

if (sdr.HasRows)
Response.Write("有记录");
else
Response.Write("无记录");
string str = "";
while (sdr.Read())
{
str = sdr.GetString(0) + "," + sdr.GetString(1);
}
sdr.Close();
Response.Write(str);

str = sdr.GetString(0) + "," + sdr.GetString(1);
sdr的数组0或者1当中有一个是int32的,获取时候应该sdr.GetInt32(0)或sdr.GetInt32(1)
因为你数据库设计时候是数字类型的

试试这样呢
while (sdr.Read())
{
str += sdr[0].ToString() + "," + sdr[1].ToString()+ "|";
}