我用的是AspNetPager分页,出现问题了,
http://zj.jiadong.net.cn/haodiduan/wangpulist/21.html
这个翻页的时候我在调试代码的时候总是接受两个一样的参数。
我用了伪静态,
我在代码中有个接受上面的21等等。
第一页没有问题,但是在翻页的时候我调试的代码得到的结果是type=21&type=21这是为什么呢?
这个是我的webconfig配置文件。请高人指教 <RewriterRule>
<LookFor>~/wangpuList/(\d+)\.html</LookFor>
<SendTo>~/wangpuList2.aspx?type=$1</SendTo>
</RewriterRule>
http://zj.jiadong.net.cn/haodiduan/wangpulist/21.html
这个翻页的时候我在调试代码的时候总是接受两个一样的参数。
我用了伪静态,
我在代码中有个接受上面的21等等。
第一页没有问题,但是在翻页的时候我调试的代码得到的结果是type=21&type=21这是为什么呢?
这个是我的webconfig配置文件。请高人指教 <RewriterRule>
<LookFor>~/wangpuList/(\d+)\.html</LookFor>
<SendTo>~/wangpuList2.aspx?type=$1</SendTo>
</RewriterRule>
CREATE PROCEDURE Up_wangpu_Get
@Type int,
@AdId int,
@PageSize int=20,
@PageIndex int=1,
@WhereString nvarchar(500)
AS
declare @SqlStr nvarchar(2000)
declare @Filter nvarchar(2000)
if(@WhereString ='')
begin
set @WhereString=' where '
set @Filter=''
end
else
begin
set @Filter=' where '+@WhereString
set @WhereString=' where '+@WhereString+' and '
end
if(@Type=1)--获取单条记录
begin
select * from hddWangpu where id=@AdId
end
if(@Type=2)--获取列表
begin
if(@PageIndex=1)
begin
Set @SqlStr = N'Select Top '+Convert(Nvarchar(10),@PageSize)+' * from hddwangpu'+@Filter +' Order By id Desc'
end
else
begin
Set @SqlStr = N'Select Top '+Convert(Nvarchar(10),@PageSize)+' * from hddwangpu'+@WhereString+' id<(Select Min(id) From(Select Top '+Convert(Nvarchar(10),(@PageIndex-1)*@PageSize)+' id from hddwangpu '+@Filter+' Order By id Desc)a) order By id Desc'
end
Execute Sp_ExecuteSql @SqlStr
Set @SqlStr = 'select count(*) from hddwangpu '+@Filter
Execute Sp_ExecuteSql @SqlStr
endif(@Type=3)--获取列表显示在前台页面所有的收费的信息将排列在免费的前面 --我调用的是这个,
begin
if(@PageIndex=1)
begin
Set @SqlStr = N'Select Top '+Convert(Nvarchar(10),@PageSize)+' * from hddwangpu'+@Filter +' order by [free] desc,adddate desc'
end
else
begin
Set @SqlStr = N'Select Top '+Convert(Nvarchar(10),@PageSize)+' * from hddwangpu'+@WhereString+' id<(Select Min(id) From(Select Top '+Convert(Nvarchar(10),(@PageIndex-1)*@PageSize)+' id from hddwangpu '+@Filter+' order by [free] desc,adddate desc)a) order by [free] desc,adddate desc'
end
Execute Sp_ExecuteSql @SqlStr
Set @SqlStr = 'select count(*) from hddwangpu '+@Filter
Execute Sp_ExecuteSql @SqlStr
end
GO我差清楚了,是存储过程应该有问题,
已经解决了,吧adddate改成id就好了。
AspNetPager分页控件--使用方法 --------------------------------------------------------------------------------
asp.net结合aspnetpager使用SQL2005的存储过程分页 --------------------------------------------------------------------------------
用aspnetpager实现datalist分页的代码 http://www.bcbbs.net/Search.aspx?bcbbsKey=AspNetPager&t=1&p=1