Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)qq
published in(发表于) 2014/7/9 1:40:28
将Web页转换为ASP.NET 2.0用户控件

将Web页转换为ASP.NET 2.0用户控件





将Web页转换为ASP.NET 2.0用户控件



当用户创建完一个Web页后,发现该Web页在很多地方都会用到,这时为了提高代码的重用性,最佳的选择方案就是将Web页转换为ASP.NET 2.0用户控件。ASP.NET 2.0用户控件可以用来重用现有的控件,当某个页需要这一功能时便可以直接拖曳实现引用。下面将介绍单文件页的概念、单文件页的优点以及如何将Web页转换为ASP.NET 2.0用户控件。



1.单文件页



单文件页就是将标记、服务器端元素以及事件处理代码全都放在同一个.aspx文件中。在对该页进行编译时,编译器将生成和编译一个从Page基类派生或从使用@Page指令的Inherits属性定义的自定义基类派生的新类。例如,如果在应用程序的根目录中创建一个名为PageFirst的新ASP.NET 2.0网页,则随后将从Page类派生一个名为PageFirst.aspx的新类。对于应用程序子文件夹中的页,将使用子文件夹名称作为生成的类的一部分。生成的类中包含 .aspx 页中的控件的声明以及用户的事件处理程序和其他自定义代码。



在生成页之后,生成的类将编译成程序集,并将该程序集加载到应用程序域,然后对该页类进行实例化并执行,将输出呈现到浏览器。如果对影响生成类的页进行更改(无论是添加控件还是修改代码),那么已编译的类代码将失效,并生成新的类。



单文件ASP.NET 2.0网页中的页类的继承模型如图1所示。







图1 页类的继承模型



2.单文件页的优点



通常,单文件模型适用于特定的页,在这些页中,代码主要由页中控件的事件处理程序组成。单文件页模型的优点包括以下几点。



① 在没有太多代码的页中,可以方便地将代码和标记保留在同一个文件中,这一点比代码隐藏模型的其他优点都重要。



② 因为只有一个文件,所以使用单文件模型编写的页更容易部署或发送给其他程序员。



③ 由于文件之间没有相关性,因此更容易对单文件页进行重命名。



④ 因为页自包含于单个文件中,所以在源代码管理系统中管理文件稍微简单一些。



3.将单文件ASP.NET 2.0网页转换为用户控件



l 重命名.aspx页使其文件扩展名为.ascx。



l 从该页面中移除html、body和form元素。



源代码如下所示:



<%@ Page Language="C#" AutoEventWireup="True" CodeFile="Login.aspx.cs"



Inherits="Login" %>






"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">















无标题页






















runat="server" Text="">














runat="server"



onclick="Button1_Click"



Text="显示当前时间">























l 将@ Page指令更改为@ Control指令。



l 移除@ Control指令中除Language、AutoEventWireup(如果存在)、CodeFile和Inhe之外的所有属性。



更改后的代码如下:



<%@ Control Language="C#"%>










runat="server" Text="">














runat="server"



onclick="Button1_Click"



Text="显示当前时间">















If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759