打印本文 打印本文 关闭窗口 关闭窗口
ASP.NET网站建设之代码分离
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1860  更新时间:2009/4/23 10:41:26  文章录入:mintao  责任编辑:mintao

ASP.NET网站建设之代码分离

刘峰 2005-1-20

    在我们传统的网站建设中通常是先设计网站页面,再利用开发工具,在网站的框架内进行功能设计。这样的网站建设存在很多弊端,其中最突出的缺点是不利于小组共同开发,各环节之间依赖性太强。

    在ASP.NET中我们可以利用后台编码,把HTML用户界面设计(颜色、美学等)与页面代码区分开来。这样就可以解决我们小组的并行开发问题。

    其主题思想是:美工来进行网站页面的设计,程序员对网站要实现的功能分模块开发。待到页面和功能模块开发完毕后,我们只要在美工界面中对其HTML代码稍加修改,就可以完成对应的功能。

    下面就用一个小例子来进行说明。 

 

程序员完成的功能有如下模块:

1.      在左边的Column1处点击,中间的三个内容显示小组三条新闻

2.      在Column2处点击,中间的三个内容显示三个人员情况

3.      在Column3处点击,弹出一个窗口显示一张照片。

为了测试,我们可以将这三个功能分别交给两个程序员来做。

甲程序员:完成模块1和2

1.              甲可以先建立一个WebApplication,在界面上放入两个ImageButton:IBtnNews,IBtnMember和六个Label:Lb1Title,Lb1Detail, Lb2Title,Lb2Detail, Lb3Title,Lb3Detail。生成一个Web应用程序,点击IBNews,六个Label显示小组新闻,点击IBMember,六个Label显示小组三名成员。这样我们就为建立源文件创建好了条件。

2.              我们建立一个C#类文件CodeBehind.cs。

3.              由于我们是建立的Web程序,则需要在添加引用中,添加System.Web.dll应用。

4.              去掉构造函数,因为后台编码不需要创建类。

5.              让类从Page对象上继承功能,即

public class CodeBehind:System.Web.UI.Page

6.              将刚才生成的WebApplication中的相关代码复制进来,主要有两个部分:声明部分和方法部分,在这里把应用程序中的可访问级别protected,改为public,因为只有这样外部的代码才可以访问我们的方法和变量,要注意的是页面上所有与后台编码文件交户的控件都要有一个对应的本地变量。

7.              生成一个CodeBehind.cs。

至此,甲程序员的工作完成。乙程序员可以用同样的方式生成他的CodeBehind.cs文件。甲乙两位程序员进行代码合成,完成一个完整的CodeBehinde.cs;

代码如下:

using System;

using System.Web.UI;

using System.Web.UI.WebControls;

 

namespace codetest

{

    public class News:System.Web.UI.Page

    {

       public System.Web.UI.WebControls.Label Lb1Title;

       public System.Web.UI.WebControls.Label Lb1Detail;

       public System.Web.UI.WebControls.Label Lb2Title;

       public System.Web.UI.WebControls.Label Lb2Detail;

       public System.Web.UI.WebControls.Label Lb3Title;

       public System.Web.UI.WebControls.Label Lb3Detail;

       public System.Web.UI.WebControls.ImageButton IBtnNews;

       public System.Web.UI.WebControls.ImageButton IIBtnMember;

        public System.Web.UI.WebControls.ImageButton IBtnContact;

 

       public void IBtnNews_Click(object sender, System.Web.UI.ImageClickEventArgs e)

       {

           ……………………

[1] [2] [3]  下一页

打印本文 打印本文 关闭窗口 关闭窗口