SqlDataReader对象的NextResult方法读取存储过程多个结果集

71 篇文章 0 订阅
17 篇文章 0 订阅

SqlDataReader对象的NextResult方法读取存储过程多个结果集

使用SqlDataReader对象的NextResult方法读取存储过程多个结果集

先上效果图

简单的查询存储过程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
-- =============================================
-- Author: <Author,Iceman>
-- Create date: <Create Date,2012-11-11>
-- Description: <Description,多数据集查询测试>
-- =============================================
CREATE PROCEDURE [dbo].[Iceman_MoreTableSelect_Test]
AS
BEGIN
SET NOCOUNT ON ;
select top 10 a.art_Id,a.art_Subject,c.cate_UrlRewriter
from Iceman_Article a,Iceman_Cates c
where c.cate_Id= a.art_CateId order by a.art_UploadDate desc
select top 10 news_Id,news_Subject from Iceman_News order by news_Priority desc
select top 10 ppt_Id,ppt_Subject from Iceman_PPT order by ppt_Priority desc
END
GO




asp.net读取代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
private void ListBind() {
SqlDataReader sdr = SQLHelper.RunProcedure( "Iceman_MoreTableSelect_Test" , null );
//读取热点新闻结果集(第一个结果集)
while (sdr.Read()) {
firstBuilder.Append( "<li><a href='" );
firstBuilder.Append(sdr[2].ToString() + sdr[0].ToString());
firstBuilder.AppendFormat( ".shtml'>{0}</a></li>" , StrOperate.SubStr(sdr[1].ToString(), 12));
}
//读取最新文章结果集(第二个结果集)
if (sdr.NextResult()) {
while (sdr.Read()) {
secondBuilder.Append( "<li><a href='" );
secondBuilder.Append(sdr[0].ToString());
secondBuilder.AppendFormat( ".shtml'>{0}</a></li>" , StrOperate.SubStr(sdr[1].ToString(), 12));
}
}
//读取PPT结果集(第二个结果集)
if (sdr.NextResult()) {
while (sdr.Read()) {
thirdBuilder.Append( "<li><a href='" );
thirdBuilder.Append(sdr[0].ToString());
thirdBuilder.AppendFormat( ".shtml'>{0}</a></li>" , StrOperate.SubStr(sdr[1].ToString(), 18));
}
}
sdr.Dispose();
sdr.Close();
}
protected StringBuilder firstBuilder = new StringBuilder();
protected StringBuilder secondBuilder = new StringBuilder();
protected StringBuilder thirdBuilder = new StringBuilder();


HTML显示代码:

1
2
3
4
5
6
7
8
9
10
11
12
< fieldset >
< legend >热点新闻</ legend >
< div >< ul ><%= firstBuilder.ToString() %></ ul ></ div >
</ fieldset >
< fieldset >
< legend >最新文章</ legend >
< div >< ul ><%= secondBuilder.ToString() %></ ul ></ div >
</ fieldset >
< fieldset >
< legend >PPT操作技巧</ legend >
< div >< ul ><%= thirdBuilder.ToString() %></ ul ></ div >
</ fieldset >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值