当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 这是asp.net的第二个应用(四)

ASP.NET
C# Quoted-Printable编码、解码
asp.net Google的translate工具翻译 API
.NET读取所有目录下文件正则匹配文本电子邮件
asp.net 半角全角转化工具
AjaxControlToolKit 显示浏览者本地语言的方法
asp.net HTML文件上传标签
ASP.NET 绑定DataSet中的多个表
ASP.NET 重定向的几种方法小结
Asp.Net 重定向必须要知道的一些资料
ASP.NET 导出到Excel时保留换行的代码
Asp.Net Cache缓存使用代码
document.getElementsByName和document.getElementById 在IE与FF中不同实现
GridView单元格合并
asp.net 大文件上传控件
asp.net 日期函数 某月的第一天和最后一天的日期
asp.net 时间类 一周的周一和周末的日期
C# javaScript函数的相互调用
asp.net membership 密码重设
"虚拟路径"..."映射到另一个应用程序,这是不允许的!
如何传值在2个页面之间 要求不刷新父页面,并且不能用Querystring传值

ASP.NET 中的 这是asp.net的第二个应用(四)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 184 ::
收藏到网摘: n/a

http://www.asp888.net 豆腐技术站

我们首先来按照栏目的类别来显示栏目的所有文章,当然一个分页的程序是非常关键的,我们还是来用
我们在 留言版 中用到的 那个分页的程序,过几天 我会把这个作成一个pagelet 的,大家赶快鼓励我吧!

showarticle.aspx:
<!--#include file="func.aspx"-->
<html>
<head>
<title>浏览文章</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="Description" Content="探讨ASp,Php 编程,介绍Visual Basic ,Visual C++
等业界最新技术 并提供 免费的各种服务 包括 免费统计系统,免费调查
并提供 招聘站点和 同学录 的服务">
<meta name="Keywords" Content="探讨ASp,Php 编程,介绍Visual Basic ,Visual C++
等业界最新技术 并提供 免费的各种服务 包括 免费统计系统,免费调查
并提供 招聘站点和 同学录 的服务">
<link REL="SHORTCUT ICON" href="http://www.asp888.net/site.ico">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<link rel="stylesheet" type="text/css" href="/doufu.css">
</head>
<body>
<!--广告开始-->
<img src="/upload/tech/20091103/20091103053346_3e89ebdb49f712c7d90d1b39e348bbbf.gif">
<!--广告结束-->
<%
dim strClassid as string
dim conn as SQLConnection
dim sqlCmd as SQLCommand
dim sqlRead as SQLDataReader
dim strSQL as string
dim intLen as integer
dim intRecCount as integer

strClassid=request.querystring("classid")
conn=GetConn()
strSQL="select count(*) from lanmu where classid=" & strClassid & ""
sqlCmd=new SQLCommand(strSQL,conn)
sqlCmd.ActiveConnection.Open()
sqlCmd.Execute(sqlRead)
sqlCmd.ActiveConnection.Close()
sqlRead.Read()
if cInt(sqlRead(0))=0 then
response.write("对不起,当前这个栏目没有内容")
response.end
end if
intRecCount=sqlRead(0)
strSQL="select * from lanmu,lanmuclass where lanmu.classid=lanmuclass.classid and lanmu.classid=" & strClassID & " and lanmu.isuse='1' order by id desc"
sqlCmd=new SQLCommand(strSQL,conn)
sqlCmd.ActiveConnection.Open()
sqlCmd.Execute(sqlRead)


'处理分页显示

dim intPageCount as integer
dim intStart as integer

if isNumeric(request.querystring("start")) then
intStart=Cint(request.querystring("start")) '本页数据起使位置
else
intStart=0
end if

intLen=10 '每页需要显示的数据数量
'以下计算 当前的 记录的分页页数
if (intRecCount mod intLen)=0 then
intPageCount=intRecCount/intLen
else
intPageCount=(intRecCount-(intRecCount mod intLen))/intLen+1
end if
dim i as integer
'将得到的sqlRead向后移动 start 指定的 位置
for i=0 to intStart-1
sqlRead.read()
next
'显示table 分页Bar
WritePage(intStart,"showarticle.aspx",intLen ,intPageCount ,intRecCount )
%>
<table border=1 width=100%>
<tr>
<td width=10% align=center>编号</td>
<td width=50% nowrap>主题</td>
<td width=25% align=center>作者</td>
<td width=25% align=center>阅读次数</td>
</tr>
<%
for i=0 to intLen-1
atEnd=sqlRead.read()
if not atEnd then exit for%>
<tr>
<td align=center><%=sqlRead("id")%></td>
<td><a href="viewArticle.aspx?id=<%=sqlRead("id")%>"><%=sqlRead("title")%></a></td>
<td align=center><%=sqlRead("userid")%></td>
<td align=center><%=sqlRead("viewnum")%></td>
</tr>
<%next%>
</table>
<p></p>
</body>
</html>
这个程序没有什么说的,我们看看就可以了。如果有什么看不懂的地方,别着急,再看看下面的这个程序:)
viewarticle.aspx 文件是用来查看具体的某一篇文章的,因为时间的关系,我没有把这个程序的评论和打分的
功能添加上,哎!我也很伤心,等到以后吧!
viewarticle.aspx
<!--#include file="func.aspx"-->
<%

dim conn as SQLCOnnection
dim sqlRead as SQLDataReader
dim sqlCmd as SQLCommand
dim strSQL as string
dim strID as string
conn=getConn()
strID=request.