人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

多層結(jié)構(gòu)來開發(fā)ASP.NET程序

多層結(jié)構(gòu)來開發(fā)ASP.NET程序

更新時間:2022-10-01 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

最近我們用ASP.NET開發(fā)了一個企業(yè)內(nèi)部的軟件開發(fā)管理系統(tǒng),這也是我們第一次用ASP.NET,用的語言是C#。下面我著重講一下我們系統(tǒng)的架構(gòu),懇請大家指點。

先講講系統(tǒng)開發(fā)的背景。系統(tǒng)不大,開發(fā)的目的也是用來管理我們公司的軟件開發(fā)流程,同時達(dá)到學(xué)習(xí).NET的目的。既然是公司自己的系統(tǒng),同時還帶有學(xué)習(xí)的目的,所以在系統(tǒng)的架構(gòu)上,我們也力求結(jié)構(gòu)完整和清晰,而把性能等其他放在第二位考慮。存在很多不完善的地方也是在所難免的,大家?guī)е械难酃鈦砜创秃昧耍海?br>
系統(tǒng)分為4層,分別為(Web)表示層、(Facade)業(yè)務(wù)外觀層、(Rules)業(yè)務(wù)邏輯層和(Data)數(shù)據(jù)層。每層分別屬于自己的Project。另外還有一個用于處理共通業(yè)務(wù)的Project。他們之間互相的調(diào)用關(guān)系如下所示:
Web --> Facade --> Rules --> Data --> DB

下面分別來講講每層的作用和特點:
Data層叫數(shù)據(jù)層,它負(fù)責(zé)數(shù)據(jù)的提取和轉(zhuǎn)換。Data層繼承自DataTable。在它上面建立了一個數(shù)據(jù)庫的映射關(guān)系,也就是說,數(shù)據(jù)庫的每一個字段在這里都有一個常量和它關(guān)聯(lián)。它封裝好了Select,insert和update方法。你可以像操作DataTable那樣來操作它,比如取值前先調(diào)用Select方法,然后再用oData.GetValue(i,數(shù)據(jù)庫字段的別名)就可以取得值了。插入和更新操作前先用oData.GetValue(i,數(shù)據(jù)庫字段的別名,value)設(shè)置值,然后再調(diào)用Insert或者Update方法。通過這層,就把數(shù)據(jù)庫的定義和上層業(yè)務(wù)邏輯分離開了。

Data上面是Rules層。Rules層叫規(guī)則層,那它主要做什么呢?其實很簡單,Data層相當(dāng)于是數(shù)據(jù)庫的一個記錄集,它可能包括了很多條記錄。而Rules這一層則把包含多條記錄的Data對象拆分成多個Rules對象,通過提供屬性的方式給Facade層調(diào)用。在這一層上,根據(jù)業(yè)務(wù)規(guī)則做一些處理和檢查操作。上一層就可以通過調(diào)用Rules對象不同的屬性來獲取相應(yīng)的處理后的值。

Facade層叫業(yè)務(wù)外觀層,它在Rules層的上一層。它主要負(fù)責(zé)一些業(yè)務(wù)的外觀處理,組織多個Rules對象和為Web層提供顯示準(zhǔn)備等。

最上層就是Web表示層了。它負(fù)責(zé)處理頁面上的一些check和顯示的制御等等。

以上結(jié)構(gòu)也是參考了微軟的Duwamish 7.0。并且每層的命名完全是按照微軟的命名來的。在具體實施的過程中,根據(jù)上面的設(shè)計,Data和Rules層已經(jīng)很有規(guī)律了,而且數(shù)據(jù)庫的定義是通過我們公司的另外一個系統(tǒng)來管理的,數(shù)據(jù)庫表和列的定義都可以很方便的得到,于是我們制作了一個自動生成Data層和Rules層的小工具,這個小工具能自動生成Data層和Rules層的類,你要做的僅僅是根據(jù)你的業(yè)務(wù)來充實Rules層的類和處理Facade和Web層了,這樣就大大地減輕了我們的負(fù)擔(dān)。

系統(tǒng)現(xiàn)在已經(jīng)編碼測試完成正準(zhǔn)備投入試用。由于是在企業(yè)內(nèi)部網(wǎng)上使用,也沒感覺慢:)。但是性能不好是肯定的了,接下來就是要想辦法如何來提高性能了。

在開發(fā)的過程中,自己也總是不斷的拿它來跟JSP比較。個人ASP.NET還是很不錯的,它可以讓你象桌面程序開發(fā)那樣來開發(fā)WEB程序,微軟也提供了很豐富的控件,但是很多控件感覺有點像雞肋,好像用起來挺方便,但是卻有各方面的缺陷不是很實用。另外VS.NET這套開發(fā)工具還有很多Bug,由于是在進(jìn)行WEB開發(fā)的時候(我們用的是2003版)。不過據(jù)說VS.NET 2005在2003的基礎(chǔ)上改良了很多,很

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 大冶市| 正宁县| 托里县| 迁西县| 承德市| 马龙县| 清河县| 珠海市| 田林县| 浦北县| 衡阳县| 晋宁县| 赤壁市| 涡阳县| 繁峙县| 墨竹工卡县| 东乌珠穆沁旗| 宝丰县| 阿拉尔市| 通化市| 奉节县| 金寨县| 海阳市| 眉山市| 子洲县| 邛崃市| 湄潭县| 延川县| 满洲里市| 罗山县| 阜阳市| 宁河县| 宜宾县| 宁津县| 天气| 濮阳县| 浦县| 呈贡县| 江永县| 江川县| 鹤岗市|