在 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。