当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 您要在 ASP.NET 中构建 Web 应用程序,您希望通过使用内置的 Page Controller(页面控制器)来利用 ASP.NET 的事件驱动特性。
 

 

 ·ctwain    »显示摘要«
    摘要:environment: vc6 sp2, nt4 sp5, ce 2.11 one of my applications needed some scanner support. i thought it might be a good idea to get into twain and try it out. well, here are the results. firstly, t......
 ·比尔盖茨的11点忠告    »显示摘要«
    摘要:对于即将走出校园的我,自勉之...                    墨西哥《成绩》周刊6月6日一期发表了比尔?盖茨写给即将走出学校、踏入社会的青年一代的11点忠告: 1.生活是不公平的,你要去适应它。 2.这个世界并不会在意你的自尊,而是要求你在自我感觉良好之前先有所成就。 3.刚从学校走出来时你不可能一个月挣6万美元,更不会成为哪家公司的副总裁,还拥有一部汽车,直到你将这些......


在 ASP.NET 中实现 Page Controller

您要在 asp.net 中构建 web 应用程序,您希望通过使用内置的 page controller(页面控制器)来利用 asp.net 的事件驱动特性.

默认情况下,page controller 模式中所描述的概念是在 asp.net 中实现的.asp.net 页面框架实现这些概念所采取的方式使得在客户端上捕获事件.将其传输到服务器并调用适当方法这一系列操作的基本机制是自动进行的,并且对实现者来说是不可见的.页面控制器是可扩展的,因为它会在生命周期的特定点上公开各种事件(请参阅此模式后面的"页面生命周期"),因此,与应用程序具体相关的操作可以在适当的时候运行. 【程序编程相关:圆周率的计算方法

实现策略 【推荐阅读:spring,ioc模式与ejb3调用

页面生命周期 【扩展信息:[原创代码]XMLHTTP批量抓取远程资

例如,假定用户正在与包含一个按钮服务器控件的 web 窗体页进行交互(请参阅此模式后面的"简单页面示例").当用户单击按钮控件时,一个事件将作为 http 投递内容传送到服务器,在那里,asp.net 页面框架会解释投递的信息,并将引发的事件与适当的事件处理程序相关联.框架自动调用该按钮的适当事件处理程序,作为框架的正常处理的一部分.因此,您不再需要实现此功能.此外,您还可以使用内置控制器,或者,您可以用自己自定义的控制器来代替内置控制器(请参阅 front controller).

下面按发生顺序列出了页面生命周期中最常见的各个阶段.其中还包括引发的特定事件,以及处理请求时在各个阶段可能执行的一些典型操作:

asp.net 页面框架初始化(事件:init).这是生命周期的第一个步骤,该步骤将初始化 asp.net 运行库以便为响应请求做好准备.

用户代码初始化(事件:load).您应该执行与应用程序具体相关的常见任务,例如,当页面控制器引发 load 事件时打开数据库连接.您可以假设:引发 load 事件后,服务器控件已创建并完成初始化.状态已还原并且窗体控件反映了客户端的更改. [reilly02]

与应用程序相关的事件处理.在此阶段,您应该执行与应用程序相关的处理,以响应控制器引发的事件. .

清理(事件:unload).该页面已完成生成,现在可以丢弃.您应该关闭 load 事件打开的任何数据库连接,丢弃任何不再需要的对象.在连接对象被作为垃圾回收后,microsoft?.net framework 将自动关闭数据库连接.不过,您对何时进行垃圾回收没有任何控制权.因此,显式关闭数据库连接以充分利用数据库连接池是一个很好的做法.

注意:还有几个页面处理阶段没有在这里列出.不过,这些阶段不用于大多数页面处理情况.

简单页面示例

第一个示例是一个简单页面,它接受来自用户的输入,然后在屏幕上显示该输入.该示例说明了 asp.net 用于实现服务器控件的事件驱动模型.

图 1: 简单页面

当用户键入他或她的名字.然后单击"click here"按钮后,键入的名字将直接出现在按钮下面,如图 2 所示.

图 2: 显示用户输入的简单页面

在 asp.net 网页中,用户界面编程分为两个不同的部分:可视组件(或视图)与结合了模型与控制器的逻辑.
...   下一页

 ·关于sql server的一些安全问题    »显示摘要«
    摘要:www.xfocus.org目前关于nt服务器的入侵,有很多种方法,如对iis的漏洞进行利用,但大家不知道注意到没有,其实通过与nt服务器相关联的sql数据库服务器的例子也是很有比例的一种手段。大家可以参看下面的一个新闻报道:http://www.vnunet.com/news/1110938。herbless入侵破坏的一些站点,如legoland.co.uk站点就是通过sql服务器的入侵而获得对......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE