經過長時間學習ASP.NETWeb,於是和大家分享一下,看完本文你肯定有不少收穫,希望本文能教會你更多東西。學習ASP.NETWeb時,你可能會遇到相關問題,這裡將介紹ASP.NETWeb問題的解決方案。
該結構分三個層次:展示層、業務層、資料層。資料層:代表物理資料庫。業務層:負責資料層與展示層之間的資料轉送。展示層:應用程式的用戶端,它通過業務層來訪問資料庫。
展示層所操作的是駐留在記憶體中的本機資料,當需要更新資料庫資料時,要通過業務層提供的更新方法實現。這樣可以大大提高應用程式的效能,而且,什麼時候更新資料完全由你決定,提高了編程的靈活性。
執行個體:
這裡我們具體做一個執行個體來看看如何用VB.NET建立三層結構的應用程式。
資料庫:我們選擇SQLSERVER的NorthWind資料庫。業務層:我們建立一個WebService作為中介層。(需要安裝IIS服務)展示層:ASP.NETWeb我們寫一個WindowsForm第一步:建立WebService。
具體步驟如下:
1.建立一個項目,選擇ASP.NETWeb服務,命名為:”WebServiceFor業務層”。
2.添加兩個SqlDataAdapter,一個為Customer_da,它指向NorthWind資料庫的Customers表,ASP.NETWeb另一個為Order_da,指向Northwind資料庫的Orders表。
3.然後產生一個TypedDataSet(選擇“資料”菜單的“產生資料集”),命名為:Super_ds.
4.資料庫連接已經完成,下一步我們將考慮它與展示層之間的通訊,這裡我們定義兩個方法。一個為:Get_DataSet,它返回一個Super_ds類型的資料集,另一個為:Update_DataSet,它負責更新資料庫資料,方法代碼如下:
- ImportsSystem.Web.Services
- PublicClassService1
- InheritsSystem.Web.Services.WebService
- ‘WebServicesDesignerGeneratedCode…….
- <WebMethod()>PublicFunctionGet_Dataset()Assuper_ds
- customer_da.Fill(Super_ds1.Customers)
- order_da.Fill(Super_ds1.Orders)
- ReturnSuper_ds1
- EndFunction
- <WebMethod()>PublicSubUpdate_Dataset()
- Super_ds1.AcceptChanges()
- EndSub
- WEBSERVICEEXAMPLE
- TheHelloWorld()exampleservicereturnsthestringHelloWorld.
- Tobuild,uncommentthefollowinglinesthensaveandbuildtheproject.
- Totestthiswebservice,ensurethatthe.asmxfileisthestartpage
- andpressF5.
- <WebMethod()>PublicFunctionHelloWorld()AsString
- elloWorld="HelloWorld"
- EndFunction
- EndClass