国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

ASP.NET開發,從二層至三層,至面向對象 (4)

2019-11-17 01:37:55
字體:
來源:轉載
供稿:網友

asp.net開發,從二層至三層,至面向對象 (4)

繼續上一篇《ASP.NET開發,從二層至三層,至面向對象 (3)》http://m.survivalescaperooms.com/insus/p/3826706.html。我們更深層次學會了邏輯層對象,即各個具體對象與數據庫之間的邏輯類。 我們有分為有處理access的SQL語句和SQL Server的SQL語句的,還有處理存儲過程和參數的。今天Insus.NET再從處理SQL語句對象,再創建一個對象叫SqlStatement吧。讓用戶引用這個類時,無需再寫SQL語句,只管傳入字段,或值,或條件。

實現之前,我們先想一想,SQL語句有SELECT,UPDATE,DELETE,INSERT四種,其中有些SQL語句還需要帶條件。細節如下,SELECT語句:SELECT * FROM tableSELECT * FROM table WHERE xxx= yyySELECT col1,col2,...FROM tableSELECT col1,col2,... FROM table WHERE xxx= yyyUPDATE語句:UPDATE table SET xxx= yyy WHERE zzz=aaa

DELETE語句:DELETE FROM table WHERE xxx= yyy

INSERT語句:INSERT INTO table(col,col2) VALUES(xxx,yyyy)

等等 。因此,我們需要創建一個字段的類別,如Field:

這個類有兩個PRoperty,是為了讓用戶在SELECT,INSERT或是更新時,能傳入所顯示,插入或是更新的字段。接下來,我們再創建一個WHERE條件類,如Condition,它是讓用戶在SELECT帶有WHERE條件,當然在更新或是刪除時,SQL語句是少不了條件。這個類,它有三個property。field是指定字段,Operators是操作, 你是使用"=",">"還是“<"等,最后一個property為指值。OK,現在我們可以創建可封裝的類SqlStatement,看看:

寫到這里,也許會有網友會問題,有些情形上面的無實現。Insus.NET想,這畢竟是SQL語句,它比起存儲過程來說,一些不足之處,自然顯示出來,因此Insus.NET一直在使用存儲過程的原因。上面這個SqlStatement類,還是可以擴展的。這需要發揮個人的想象力了。為了能讓大家能更好的使用。下面Insus.NET重構前幾篇寫好的類Item,改為應用這個SqlStatement類。先來看看GetAll()方法,注釋掉的語句,是原來的方法:

讓你自動產生SQL語句。如果是SQL數據庫,最后兩句:

 BizBaseSQL objBizBaseSQL = new BizBaseSQL(); objBizBaseSQL.Sql = objSqlStatement.GenerateSelectStatement(); return  objBizBaseSQL.ExecuteDataSet().Tables[0];
View Code

下面是重構Insert()方法,數據添加,有地方需要注意的,在處理字段時,SELECT語句,值傳入的是null,而插入的SQL語句,需要把value傳入property。當然你寫UPDATE更新時,也應如此。上面的SqlStatement類, Insus.NET并沒有寫處理當沒有值,需要讓動態產生的SQL有傳入為null,如[xxx] = null等。

刪除方法,需要傳入WHERE條件。下面Insus.NET只是演示傳入單個條件,如果WHERE條件中,還帶有OR,AND等時,如何傳,需要想一想。

下面是重構獲取標量的方法,也就是讓程序能執行ExecuteScalar()方法:

這幾篇中,沒有演示過更新的方法。因為BizBase或者BizBaseSQL類的幾個方法,均有演示。不過Insus.NET在下面還是列舉一個更新的方法,也就是為Item類,有update()方法:

本篇演示源程序(Access DB; .NET Framework 4.0;):http://download.VEVb.com/insus/ASPDOTNET/Asp_OOP4.rar注:文章太長了,寫成續集,請關注......


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 元阳县| 涿州市| 宜城市| 修武县| 鲁甸县| 淄博市| 富阳市| 土默特右旗| 元氏县| 宜阳县| 晋城| 沂源县| 建湖县| 连云港市| 加查县| 武威市| 宣威市| 周口市| 漳州市| 新绛县| 五华县| 孝义市| 固镇县| 九龙县| 五原县| 阿巴嘎旗| 枣阳市| 吉首市| 琼中| 辽宁省| 临桂县| 淮滨县| 青海省| 山东省| 德州市| 黄梅县| 天气| 青阳县| 伊通| 体育| 阿克苏市|