位置:海鸟网 > IT > ASP.NET >

在 VS.NET 中编写 Web 应用程序(附图)



在 VS.NET 中编写 Web 应用程序(附图)(推荐)





本教程将一步步地引导你创建一个 Web 应用程序。在 .NET运行时间内,Web应用程序在一个 ASP.NET页面后台运行。ASP.NET 凭借.NET语言,包括 C#、VB.NET和 Js cript,提供了一个很棒的工作环境,这里使用的是C#编程语言(可下载工程文件包)。



本文分成三部分:DataGrid Web 控件简介、Web表单的生命周期、用VS.NET 开发Web 表单应用程序。



ASP.NET 平台的运行条件



要运行一个 ASP.NET应用程序,必须要在Windows 2000或者Windows NT 4 + Service Pack 6a操作系统上安装Web Server(IIS) 。我们可以使用任何 .NET 语言来编写代码,包括VB.NET 和 C#。这里的环境是:Windows 2000 + Visual Studio.NET Beta 1 + Personal Web Server + C#。



第一部分:DataGrid 控件简介



这个教程使用DataGrid Web 控件显示数据库表中的数据。应用程序开始前,先讨论一下 DataGrid Web 控件。



DataGridWeb控件负责显示数据库中的表数据。借助ADO.NETDataSet(数据集)对象,我们可以将一个数据库表或部分表数据与栅格建立连接。首先创建一个ADODataSetCommand对象,并从一个数据库表中选择数据。在这里的例子中,我使用了一个叫做myDB.mdb的数据库,它有一个表 myTable:



// Create an object of ADODataSetCommand

ADODataSetCommand myCmd = new ADODataSetCommand( "Select * from myTable", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=myDB.mdb");



接着创建并填充 DataSet(数据集)对象:



// Create a DataSet Object

DataSet ds = new DataSet();

// Fill DataSet with the data

myCmd.FillDataSet(ds, "Student");





然后用DataGrid 的DataSource属性将DataSet(数据集)的数据填充到栅格中,其中使用了DataBind()方法:



// View Data from DataSet to DataGrid

DataGrid1.DataSource = ds.Tables["Student”].DefaultView;

DataGrid1.DataBind();





下面介绍DataGrid Web 控件的属性。



DataGridWeb控件包含一套丰富的属性,借助它们,就可以用自己喜欢的方式来定制栅格。在DataGrid上点击右键并点击属性页面按钮,进入属性设置窗口:







通用属性

这个页面中设置 DataSource。可以允许显示页眉和页脚,允许分类复选框,允许在栅格中进行分类:







栏属性

下面的页面中可以增加栏(设计时)和它们的属性:







分页属性

分页是栅格控件的一个重要特征。在下面的页面中,设置每页的行数、栅格行的格式并激活定制页面:







格式属性

在下面这个页面允许设置栅格的颜色、字体,页面、页眉和页脚:







边框属性

下面这个页面允许设置边框的颜色和字体、单元的填料和间隔以及栅格行的类型:







第二部分:Web 表单的生命周期



如果你曾经在VS以前版本中设计过Windows分布式应用程序,你就会发现在Web表单应用程序和分布式应用程序之间有许多相同之处。本教程只简单讨论Web表单生命周期的一些内容,目的是使你对 Web表单如何工作有个概念。



一个Web表单的生命周期中有4个步骤:初始化、页面装载、事件处理和资源清理。



1)页面初始化

当页面被初始化时,发生第一个事件Page_Init。系统会执行创建和设置一个例示所需要的所有初始化步骤。



2)页面装载

页面装载在初始化之后,所发生的事件叫做 Page_Load,它的用途如下:

检查页面是不是第一次被处理;

第一次处理页面时执行数据捆绑,或者在以后的循环过程中重新判断数据捆绑表达式;

读取和更新控件属性;

恢复在保存步骤中所保存的前一个客户请求的状态;



3)事件处理

Web表单上的每个动作都激活一个到达服务器的事件。一个Web表单有两个视图:一个客户视图和一个服务器视图。所有的数据处理都在服务器上进行。当通过点击鼠标或其它方法引起一个事件时,事件就到达服务器并返回相应的数据。



4)资源清理

最后一步发生于一个表单完成了它的任务并且准备卸载的时候,这时激活Page_Unload事件,完成最后的资源清理工作,比如:关闭文件,关闭数据库连接,丢弃对象。



第三部分:开发Web应用程序

好,现在进行到开发 Web 表单应用程序这一步了。



创建工程文件的框架

用Visual Studio.NET创建一个Web应用程序并不困难,只需遵循几个简单步骤,向导就会为你创建一个很好的框架。此后,就可以用Web控件制工具箱向ASP页面中安置一些Web控件,然后就象在任何基于GUI应用程序的表单中所做的那样,设置这些控件属性。请跟随以下步骤:



第一步:选择一个工程文件

从Visual Studio .NET 主菜单中,选择“文件->新建>工程文件”,选择“Visual C# 工程文件->Web应用程序”,在文件名文本框中键入你的工程文件名,在位置文本框中是你的web服务器的根目录,使用浏览按钮可以找到正确的路径。选择了这些内容之后,点击 OK。







第二步:设置属性

下一个画面是这样的:







WebForm1.aspx是默认的ASP.NET页面,其中容纳了ASP.NET代码和控件。你可以把这个页面当作一个WebForm来对待。使用左侧的工具箱,向页面中拖曳和放置控件。

在页面上点击右键来设置页面的属性,图示如下:







这个窗口共有3个功能页,通用页让你选择脚本语言和页面版面,另外两个用于设置页面文本、超级链接以及被访问过的超级链接和关键字的颜色和字体。



第三步:向 WebForm增加控件

现在使用工具箱向页面中增加Web控件。这里增加了两个控件,一个按钮和一个 DataGrid 。点击右键可以设置这些控件的属性。







第四步:增加事件处理器

这以前已经展示了 DataGrid 和ADO.NET,下面将使用同样的技术,在DataGrid中填充一个数据库的数据。点击Button来填充栅格。

双击这个按钮,进入WebForm1.cs文件中,开始编写与按钮相应的事件处理器:



Button1.Click += new System.EventHandler (this.Button1_Click);

public void Button1_Click (object sender,System.EventArgs e)

{

}

Here is the code of the cs file -

namespace CSCornerWebAppSample

{

using system;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

///  

/// Summary des cription for WebForm1.

///  

public class WebForm1 : System.Web.UI.Page

{

protected System.Web.UI.WebControls.DataGrid DataGrid1;

protected system.Web.UI.WebControls.Button Button1;

public WebForm1()

{

Page.Init += new System.EventHandler(Page_Init);

}

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

//

// Evals true first time browser hits the page

//

}

}

protected void Page_Init(object sender, EventArgs e)

{

//

// CODEGEN: This call is required by the ASP+ Windows Form Designer.

//

InitializeComponent();

}

///  

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

///  

private void InitializeComponent()

{

Button1.Click += new System.EventHandler (this.Button1_Click);

this.Load += new System.EventHandler (this.Page_Load);

}

public void Button1_Click (object sender, System.EventArgs e)

{

}

}

}







第五步:在按钮的OnClick 上组装DataGrind

现在来编写按钮点击事件时填充栅格控件的代码。

在工程文件中使用ADO对象之前需增加对System.Data.ADO名称空间的引用:

using System.Data.ADO;

下面是Button1_Click 方法的代码:

public void Button1_Click (object sender, System.EventArgs e)

{

ADODataSetCommand CmdSet = new ADODataSetCommand( "Select * from myTable",

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\myDB.mdb");

DataSet ds = new DataSet();

CmdSet.FillDataSet(ds, "myTable");

DataGrid1.DataSource = ds.Tables["myTable"].DefaultView;

DataGrid1.DataBind();

}



第六步:编译并运行

现在用 CTRL+F5 或菜单项来编译和运行应用程序。这个工程文件打开一个浏览器的新例示,看起来是这样的:







现在点击Button看看结果,看起来是下面的样子,DataGrid中填充了来自数据库的myTable表中的数据:







这是一个非常基本的Web应用程序。现在你可以通过设置它的属性来定制Grid控件,并且开发更有用的应用程序,如在数据库中读取、删除、插入、更新记录。甚至还可以使用其它数据库,如 SQL Server。