SqlDataRead中的问题

llmei_lucky 2010-01-15 01:55:03
我用sqlDateRead对象读取数据时 出现错误报告,报告如下:
”阅读器关闭时尝试调用 FieldCount 无效“

这是怎么回事?读取数据的代码如下:

SqlConnection con = new SqlConnection(constring);
con.Open();
SqlCommand cmd = new SqlCommand("getbookmessage", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@bookid", SqlDbType.SmallInt);
cmd.Parameters["@bookid"].Value = bookid;
SqlDataReader dt = cmd.ExecuteReader();
while (dt.Read())
{
bookname = dt["bookname"].ToString();
orgcost = Convert .ToDecimal (dt["orgcost"].ToString().Trim ());
//stock = Convert.ToInt32(dt["stock"].ToString().Trim());
discount = Convert .ToSingle (dt["discount"].ToString());
price = Convert.ToDecimal(dt["price"].ToString());
booksid = Convert.ToInt32(dt["bookid"].ToString());
}
dt.Close();
con.Close();

return dt;
各位仁兄 帮忙看下那里出错了哈!
...全文
128 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
a1470 2010-01-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 namhyuk 的回复:]
dt.Close();
con.Close();

return dt;


[/Quote]
一目了然
llmei_lucky 2010-01-15
  • 打赏
  • 举报
回复
我没有用table表了 我用的DateSet 将它返回,然后绑定的,解决了,我现在想知道如果在页面 建了table表,在类里用阅读器,调用这个类时,怎么将值传个table表
llmei_lucky 2010-01-15
  • 打赏
  • 举报
回复
我是在页面新建datatable dt=new datatable();再添加行和列 我在类里用阅读器,将它读取,要把放到table表里的,阅读器不能返回值,那我应该怎么做?
cfesc9 2010-01-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jeff20040819 的回复:]
UP
[/Quote]
就是这儿错了,
最好不传reader,打开和关闭很容易出错的。
当你读取的时候还是个问题呢。
不如把它转成DataTable,返回。使用时是绑定,
还是读取都不会有打开和关闭的问题。楼主何不试下……
huminghua 2010-01-15
  • 打赏
  • 举报
回复
dt.Close();
con.Close();

return dt;


已经关闭了,怎么返回啊!
SQL77 2010-01-15
  • 打赏
  • 举报
回复
return dt;

你还要返回阅读器?
huohuli008 2010-01-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 namhyuk 的回复:]
dt.Close();
con.Close();
         
return dt;


[/Quote]

已经关闭了怎么返回呢?!~
gablfq 2010-01-15
  • 打赏
  • 举报
回复
dt.Close();
con.Close();

你 SqlDataReader 对象已经关闭了,还如何返回啊、、、
你要想返回此对象,就把
dt.Close();
con.Close();
这两个去掉,直接返在 dt ,不过要在你调用的地方用完后别主忘记关掉了、、、
whslovexyp 2010-01-15
  • 打赏
  • 举报
回复
ls的好快
namhyuk 2010-01-15
  • 打赏
  • 举报
回复
dt.Close();
con.Close();

return dt;

Jeff20040819 2010-01-15
  • 打赏
  • 举报
回复
UP

62,265

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧