一个功能完善的专栏管理的程序->这是asp.net的第二个应用(二)
我们在上篇文章中,引用了一个函数包文件func.aspx,在这篇文章中,我们详细讲解一下,这个func.aspx 文件
<%@ Assembly Name=\"System.Net\" %>
<%@ Import Namespace=\"System.Net\" %>
<%@ Import Namespace=\"System.IO\" %>
<%@ Import Namespace=\"System.Data\" %>
<%@ Import Namespace=\"System.Data.SQL\" %>
\'这些import 我就不说了,在前面的的文章 sp+中常用的NameSpace的讲解都已经有所涉及
<script language=\"VB\" runat=server>
function replaceSql(str1 as string) as string
\'在asp.net 中使用SQL 语句也会出现\"\'\"号的问题,因此使用replace函数将\"\'\" 转换成 \"\'\'\"
replaceSql=replace(str1,\"\'\",\"\'\'\")
end function
function GetConn() as SQLConnection
\'我们在这里 将连接数据库的代码进行统一化管理
Dim conn As SQLConnection
Dim Cfg as HashTable
Cfg = Context.GetConfig(\"appsettings\")
Conn = New SQLConnection(cfg(\"Conn\"))
GetConn=Conn
end function
sub WritePage(start as integer,file as string,intLen as integer,intPageCount as integer,intRecCount as integer)
\'这个是一个 可移植 的 分页的程序
\'进行分页处理
dim strWrite as string
strWrite=\"<table border=1 width=100%><tr><td>\"
response.write(strWrite)
if start=0 then
strWrite=\"首页\"
else
strWrite=\"<a href=\'\" & file & \"?start=0\'>首页</a>\"
end if
response.write(strWrite)
if start>=1 then
strWrite=\"<a href=\'\" & file & \"?start=\" & cStr(start-intLen) & \"\'>上页</a>\"
else
strWrite=\"上页\"
end if
response.write(strWrite)
if start+intLen<intRecCount then
\'还没有到最后一页数据
strWrite=\"<a href=\'\" & file & \"?start=\" & cStr(start+intLen) & \"\'>下页</a>\"
else
strWrite=\"下页\"
end if
response.write(strWrite)
if start+intLen<intRecCount then
\'还没有到最后一页数据
strWrite=\"<a href=\'\" & file & \"?start=\" & cStr((intPageCount-1)*intLen) & \"\'>末页</a>\"
else
strWrite=\"末页\"
end if
response.write(strWrite & \"</td><td>\")
strWrite=\"当前共有文章\" & Cstr(intRecCount) & \"篇,现在是第<font color=red>\" & cStr((Start/intLen)+1) & \"/\" & cstr(intPageCount) & \"</font>页\"
response.write(strWrite)
strWrite=\"</td></tr></table>\"
response.write(strWrite)
end sub
</script>
大家在asp.net 中一定要注意,我们在asp.net 中定义函数的时候,一定要注意必须在<script runat=server ..>中
对函数进行定义,而不能和asp一样在 <%和%>之间定义,这样做的好处是 对函数定义简单明了,程序的可读性
提高了很多,但是有一个很不方便的地方就是 在<script>..中不能象在<%%> 中那样方便的嵌套调用HTML
代码,而必须使用Response.Write(ss),这个是一个不方便的地方