程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 用C#創建Web應用程序

用C#創建Web應用程序

編輯:關於C語言

系統需求:

Internet Explorer 5.5

Windows 2000 Professional, Server 或 Advanced Server

ASP+/Microsoft .NET (預覽版可以在http://msdn.microsoft.com/net 下載)

SQL Server 7.0 + SP1 或更高版本

使用微軟.NET的高級對象模型(Advanced Object Model)可以快速建立安全的,易於升級性的Web應用程序。

微軟的.NET是一個開發商業解決方案的理想技術。.NET技術結合C#的彈性和高性能,開發商業程序比以往僅僅使用ASP的方法更為簡單。

在這篇文章裡,我們將使用.NET和C#來建立一個簡單的商業應用程序--一個能夠讓客戶浏覽你的產品目錄的程序。

這個程序包含了最基本的.NET和C#技術,在本文中,將涉及到如何建立和編譯C#的商業應用層組件。也將談到怎樣使用ASPX頁面存取組件和綁定數據。綜合使用這些技術,可以花費比傳統的ASP方法更少的時間建立Web應用程序。

穩固的.NET應用程序仍然依靠於穩固的數據庫計劃和精心編寫的存儲過程。

應用程序可以通過組件調用已經寫好的存儲過程。大部分多層方法都不推薦直接從程序中調用數據,那樣會降低程序的速度,也不利於調試。

本文主要討論C#和ASP+,不過多的討論建立數據庫和存儲過程。

組件的開發

我們將要編寫的c#組件同時作為邏輯層和數據存取層。

如果打算將來把程序移植到另一種數據庫中,比如Oracle,那麼需要把邏輯層和數據存取層分別放在兩個組件中。本文中只使用SQL Server,所以不需要分開它們。

這個應用程序需要兩個頁面:Default.aspx 和 ProductList.aspx。 Default.aspx 是用戶訪問Web首先看見的頁面,它列出所有的產品種類。用戶從Default.aspx菜單中選擇種類後,將進入ProductList.ASPx頁面,這個頁面顯示了當前類所有產品的列表。

在用戶使用這兩個頁面的過程中,發生了兩個動作:第一個是在菜單中列出產品種類(Default.aspx),第二個是在產品列表的頁面中列出產品(ProductList.ASPx)。我們可以建立兩個函數來完成這兩個任務,這兩個函數都通過調用存儲過程獲取數據。對應這兩個函數,我們在一個叫做CommerceDotNet的名字空間中建立起兩個類:Category 和 Product。(圖1)使用CommerceDotNet.Categories實例化CategorIEs類,使用CommerceDotNet.Products實例化Products類。為了使代碼清晰,我們在不同的文件中分別聲明這兩個類。由於他們共享一個名字空間,即使在不同的文件聲明,在編譯後也將成為一個單獨的組件。

CategoryList方法傳遞了一個包含所有產品種類的數據集給系統。在CategorIEs類中加入CategoryList的方法。

代碼如下:

Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/

-->namespace CommerceDotNet {

public class CategorIEs {

public DataSet CategoryList() {

}

}

}

兩個類都建立好以後,編譯程序。

使用命令:

csc /out:/bin/CommerceDotNet.dll /t:library /r:System.Data.dll CategoryDB.cs ProductDB.cs

”/out:“開關指定編譯庫名和存放位置,”/t:“開關告訴編譯器建立庫,”/r:“開關指出組件涉及到的其他庫,完整的源程序在文末後面列出。

ASP+頁面的開發

建立好組件以後,下面的工作是開發作為用戶界面ASP+頁面。前面的部分,我們設計了default.aspx 和 productslist.aspx 頁,Default.ASPx頁是站點被裝入後的第一頁,我們就從建立這個缺省頁面開始。

當頁面讀入時,觸發Page_Load()方法,這個方法完成了從數據庫獲取的數據並綁定到MyList的任務。首先,聲明一個ICollection型變量menuItems。然後,實例化組件,調用CategoryList方法,把數據集存放在menuItems對象中。設置MyList的數據源為menuItems。執行MyList.DataBind方法把數據綁定到MyList。

這部分代碼如下:

<script language=”C#“ runat=”server“>

void Page_Load(Object sender, EventArgs e) {

ICollection menuItems;

CommerceDotNet.Categories categories = new CommerceDotNet.CategorIEs();

menuItems = categories.CategoryList()。Tables[0].DefaultVIEw;

MyList.DataSource = menuItems;

MyList.DataBind();

}

</script>

default.aspx中其他代碼與傳統的ASP頁面類似,請參見文末列出的代碼。

ProductList.aspx與default.aspx類似,但是,綁定數據的代碼有些變化,因為,在開發C#組件的時候,我們在CommerceDotNet.ProductsList方法中向存儲過程中傳遞了參數,所以,ASP+頁面中也需要有相應的變化。

CommerceDotNet.Products products = new CommerceDotNet.Products();

MyProductList.DataSource = products.ProductsList(categoryId)。Tables[0].DefaultVIEw;

MyProductList.DataBind();

至此,兩個ASP+頁面也創建完畢。

這樣,結合C#和ASP+的最基礎的應用程序就創建好了。

這個程序展示了微軟。NET和C#技術的強大威力,在這個基礎上,再作進一步的增添和修改,很容易開發出強大的站點。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved