分页存储过程如下代码Pages.sql:
CREATE PROCEDURE Pages
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的字段名
@pageSize int = 10, -- 页尺寸
@pageIndex int = 1, -- 页码
@doCount bit = 0, -- 返回记录总数, 非 0 值则返回
@orderType bit = 0, -- 设置排序类型, 非 0 值则降序
@strWhere varchar(1500) = '', -- 查询条件 (注意: 不要加 where)
@primaryKey varchar(60)
AS
declare @strSQL varchar(5000) -- 主语句
declare @strOrder varchar(400) -- 排序类型
declare @strTmpFld varchar(10)
set @strTmpFld = 'TmpFld' --临时字段名!!!重要!!!
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = 'select count(*) as Total from '+ @tblName +' where '+ @strWhere
else
set @strSQL = 'select count(*) as Total from '+ @tblName +''
end
--以上代码的意思是如果@doCount传递过来的不是0,就执行总数统计。以下的所有代码都
--是@doCount为0的情况 ......
使用环境:Windows XP Professional
开发平台:NET2.0,VS2005
已经过测试,实现了伪静态技术的实现,可以实现诸如Show.aspx?MyID=1成功转换为1.html的转换,现在将成果与大家分享一下:
引入:我们为什么不直接使用Show.aspx?MyID=1这种访问方式而非要使用1.html这样的访问方式呢,也许很多人都觉得没有必要再讲解下去,但是小弟也是初学者,考虑到很多现在和我一样水平的爱好者,都曾经为此烦恼不已,或者正在尝试无数次而未果,因此,此文仅针对菜鸟级的同胞们,希望对你们有所帮助,至于达人们看到了,希望提出更多的宝贵意见或建议,以咨鼓励本小虾,以咨为更菜的小虾们提供更多的更简单的更通用更实用的方法!!!
好了,废话少讲,言归正传,以下为俺的实现过程:
①:首先要有这个文件URLRewriter.dll,如果没有,赶快到网上下载一个,并将其放到下面的bin目录里面,并且将其引用添加到下面里面;
②:下面就是Web.Config文件的配置了,当然,配置过程相当简单:
& ......
网页中出现“'sys' 未定义
”或“'Sys' is undefined”的错误。
此时我们要做的是在 web.config
中 <system.web> 一节下面添加类似
如下内容:
<httpHandlers>
<add
verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
validate="false"/>
</httpHandlers>
注意,上面说的是类似,因为不同的版本可能各属性不相同。
另外,下面是新建 ASP.NET AJAX-Enabled Web Site 站点时自动创建的 web.config,供您参考。
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.extensions"
type="System.Web.Configuration.SystemWebExtensionsSectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken ......
网页中出现“'sys' 未定义
”或“'Sys' is undefined”的错误。
此时我们要做的是在 web.config
中 <system.web> 一节下面添加类似
如下内容:
<httpHandlers>
<add
verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
validate="false"/>
</httpHandlers>
注意,上面说的是类似,因为不同的版本可能各属性不相同。
另外,下面是新建 ASP.NET AJAX-Enabled Web Site 站点时自动创建的 web.config,供您参考。
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.extensions"
type="System.Web.Configuration.SystemWebExtensionsSectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken ......
Global.asax 文件,有时候叫做 ASP.NET 应用程序文件,提供了一种在一个中心位置响应应用程序级或模块级事件的方法。你可以使用这个文件实现应用程序安全性以及其它一些任务。下面让我们详细看一下如何在应用程序开发工作中使用这个文件。
概述
Global.asax 位于应用程序根目录下。虽然 Visual Studio .NET 会自动插入这个文件到所有的 ASP.NET 项目中,但是它实际上是一个可选文件。删除它不会出问题——当然是在你没有使用它的情况下。.asax 文件扩展名指出它是一个应用程序文件,而不是一个使用 aspx 的 ASP.NET 文件。
Global.asax 文件被配置为任何(通过 URL 的)直接 HTTP 请求都被自动拒绝,所以用户不能下载或查看其内容。ASP.NET 页面框架能够自动识别出对Global.asax 文件所做的任何更改。在 Global.asax 被更改后ASP.NET 页面框架会重新启动应用程序,包括关闭所有的浏览器会话,去除所有状态信息,并重新启动应用程序域。
编程
Global.asax 文件继承自HttpApplication 类,它维护一个HttpApplication 对象池,并在需要时将对象池中的对象分配给应用程序。Global.asax 文件包含以下事件:
· &n ......
什么是用户控件(User Control)?
用户控件其实就是一种自定义的组合控件,通常由系统提供的可视化控件组合而成,
用户控件中不仅可以定义显示页面,还可以编写事件处理代码。当多个网页中包括
有部分相同的用户界面时,可以将这些内容相同的部分提取出来,做成用户控件。
HttpHandler:事实上,当一个HTTP请求到达HttpModule时,整个ASP.NET
Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于Http
请求来讲,HttpModule是一个HTTP请求的“必经之路”它可以在这个HTTP请求
传递到真正的请求处理中心之前附加一些需要的信息在这个HTTP请求信息之上,
或者针对截获的这个HTTP请求信息做一些额外的工作,或者在某些情况下干脆终止
满足一些条件的HTTP请求,从而可以起到一个Filter(过滤器)的作用。
HttpHandler:HttpHandler是HTTP请求的真正处理中心。正是在这个HttpHandler
容器中,ASP.NET才真正地对客户端请求的服务器页面做出编译和执行,并将处理后的信息
附加HTTP请求信息流中再次返回到HttpModule中,这时候HttpModule则会继续对处理
完毕的HTTP请求信息流进行层层的转交动作,直到返回到客户端为止。 ......
2.1 ASP.net 入门
通常谈一个学科,我们老是说,它入门很简单的嘛,ASP.net也是。ASP.net提出一个概念,就是认为WEB页面,也是一个窗体,所以,学习过面向对象编程的VB VC BC Dephi的朋友,学起来就简单多了。
一个ASP.net页面的后缀名是".aspx",所以,IIS在你安装完ASP.net时,也会把Default.aspx作为你的默认首页,网管朋友一定要注意了。
ASP.net 是后天编译运行的,只是在第一次运行时编译,所以,以后的运行速度比ASP执行快。
2.2 写自己第一个ASP.net的程序
激动吗?很快就开始写第一个程序了,一般学任何语言都要Hello World!一下吧,那我们也来。
在这之前写要说一下,ASP.net的程序可以用任何东西写,甚至是Windows的记事本,当初基督山也很疑惑,要不要用 V Interdev .net 来编写啊,事实证明,那玩意没手写好用。
<%@ Page Language="VB"%> ’说明一下你使用的哪一种语言来写.net的,如果是VB的话,这行可以不写。
<%Reponse.Write ("Hello World")%>
命名 myfirstasp_net.aspx 来我们运行一下,果然,Hello World!
注意,Response.Write 语句,我们原来写成 Response.Write "Hello World!"也是正确 ......
2.1 ASP.net 入门
通常谈一个学科,我们老是说,它入门很简单的嘛,ASP.net也是。ASP.net提出一个概念,就是认为WEB页面,也是一个窗体,所以,学习过面向对象编程的VB VC BC Dephi的朋友,学起来就简单多了。
一个ASP.net页面的后缀名是".aspx",所以,IIS在你安装完ASP.net时,也会把Default.aspx作为你的默认首页,网管朋友一定要注意了。
ASP.net 是后天编译运行的,只是在第一次运行时编译,所以,以后的运行速度比ASP执行快。
2.2 写自己第一个ASP.net的程序
激动吗?很快就开始写第一个程序了,一般学任何语言都要Hello World!一下吧,那我们也来。
在这之前写要说一下,ASP.net的程序可以用任何东西写,甚至是Windows的记事本,当初基督山也很疑惑,要不要用 V Interdev .net 来编写啊,事实证明,那玩意没手写好用。
<%@ Page Language="VB"%> ’说明一下你使用的哪一种语言来写.net的,如果是VB的话,这行可以不写。
<%Reponse.Write ("Hello World")%>
命名 myfirstasp_net.aspx 来我们运行一下,果然,Hello World!
注意,Response.Write 语句,我们原来写成 Response.Write "Hello World!"也是正确 ......