已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Ndolls V1.0 數(shù)據(jù)框架使用說(shuō)明NDolls框架使用說(shuō)明1、 框架說(shuō)明1.1 設(shè)計(jì)理念傳統(tǒng)的信息系統(tǒng)開(kāi)發(fā)過(guò)程中,針對(duì)數(shù)據(jù)庫(kù)的操作繁瑣且容易出錯(cuò),并可能存在各方面的安全隱患問(wèn)題。三層架構(gòu)雖然一定程度上實(shí)現(xiàn)了對(duì)數(shù)據(jù)庫(kù)操作的封裝,但在使用過(guò)程中對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)的依賴程度過(guò)高,一旦數(shù)據(jù)庫(kù)結(jié)構(gòu)發(fā)生變化,三層的內(nèi)容都需要不同程度的發(fā)生調(diào)整,且對(duì)不同表之間的關(guān)聯(lián)關(guān)系的支持不足。針對(duì)以上問(wèn)題,提出了NDolls框架,對(duì)底層數(shù)據(jù)庫(kù)操作的封裝。最大程度上減少了對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)的依賴,只需維護(hù)對(duì)應(yīng)的實(shí)體類即可;并提供多表之間關(guān)聯(lián)關(guān)系的級(jí)聯(lián)操作(事務(wù)處理)及實(shí)體對(duì)象的驗(yàn)證配置化等功能。1.2 框架組成本次涉及兩部分NDolls.Core及NDolls.Data。其中NDolls.Core作為基礎(chǔ)功能支持類庫(kù),封裝了各種公共方法,供NDolls.Data及未來(lái)不斷擴(kuò)展的各種框架組件使用;NDolls.Data則是本次重點(diǎn),提供了支持?jǐn)?shù)據(jù)庫(kù)操作的各種基本操作。2、 使用準(zhǔn)備支持DotNet Framework4.0及以上版本;使用時(shí)在項(xiàng)目中添加NDoll.Core.dll及NDoll.Data.dll引用即可。3、 實(shí)體類配置3.1 數(shù)據(jù)庫(kù)連接配置在主項(xiàng)目的配置文件(Window對(duì)應(yīng)App.config、網(wǎng)站對(duì)應(yīng)Web.config)的appSettings節(jié)中維護(hù)ConnctionString即可。如下圖所示:3.2 實(shí)體類配置NDolls數(shù)據(jù)框架中,最為核心的就是實(shí)體類,通過(guò)對(duì)實(shí)體類的配置可以實(shí)現(xiàn)一系列復(fù)雜的數(shù)據(jù)庫(kù)操作。1) 使用NDolls框架的實(shí)體類都要繼承自NDolls.Data.Entity.EntityBase實(shí)體基類。如下圖所示:2) 對(duì)實(shí)體類的配置主要由NDolls.Data.Attribute程序集中Entity特性、DataField特性、Association特性及Validate特性實(shí)現(xiàn)。 Entity特性用于映射實(shí)體類對(duì)應(yīng)的數(shù)據(jù)庫(kù)表及其主鍵信息。如下圖所示: DataField特性用于配置實(shí)體類中屬性與數(shù)據(jù)庫(kù)的對(duì)應(yīng)關(guān)系,其中包括與數(shù)據(jù)庫(kù)對(duì)應(yīng)的字段名及字段類型等。如下圖所示: Association特性主要負(fù)責(zé)管理實(shí)體類的關(guān)聯(lián)關(guān)系,并通過(guò)配置實(shí)現(xiàn)各種級(jí)聯(lián)操作?!娟P(guān)聯(lián)關(guān)系包括普通關(guān)聯(lián)關(guān)系(1對(duì)1)、聚合關(guān)系(1對(duì)N)、組合關(guān)系(1對(duì)N)。】【CascadeType枚舉類型設(shè)置了各種級(jí)聯(lián)操作的類型,包括級(jí)聯(lián)添加、級(jí)聯(lián)修改、級(jí)聯(lián)查詢等。】普通關(guān)聯(lián)關(guān)系(1對(duì)1)示例,如下圖所示:聚合及組合關(guān)系(1對(duì)N)示例,如下圖所示: Validate特性設(shè)置了對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改或添加操作時(shí)需要驗(yàn)證的屬性字段及驗(yàn)證規(guī)則等?!酒渲序?yàn)證規(guī)則可使用內(nèi)置驗(yàn)證規(guī)則(見(jiàn)附錄一),也可自定義正則表達(dá)式的驗(yàn)證規(guī)則?!緼:內(nèi)置規(guī)則驗(yàn)證示例,如下圖所示:B:自定義驗(yàn)證規(guī)則示例,如下圖所示:4、 使用示例具體應(yīng)用功能需添加一下命名空間的引用,如下圖所示:定義Repository功能容器,通過(guò)容器即可完成數(shù)據(jù)庫(kù)的各種基本操作。Repository的創(chuàng)建可有兩種方式實(shí)現(xiàn),通過(guò)RepositoryFactory獲得對(duì)象或直接實(shí)例化對(duì)象,其中通過(guò)RepositoryFactory方式具有容器緩存功能,具有更好的效率。示例如下圖所示:【CreateRepository方法的參數(shù)可由用戶隨意定制,用來(lái)作為緩存的名稱使用,下次再次調(diào)用時(shí)會(huì)直接獲取緩存對(duì)象,提高效率;建議與調(diào)用的類名一致?!?.1 查詢操作4.1.1 按主鍵查詢對(duì)象通過(guò)將主鍵值作為參數(shù)傳入,查詢?cè)撝麈I對(duì)應(yīng)的對(duì)象。主鍵的配置在Model實(shí)體類中配置。4.1.2 按自定義條件查詢對(duì)象集合每一個(gè)查詢條件對(duì)應(yīng)一個(gè)ConditionItem實(shí)例對(duì)象,若有多個(gè)條件,則需生成由多個(gè)ConditionItem對(duì)象組成的List集合;查詢時(shí)可以通過(guò)ConditionItem中的SearchType設(shè)置該條件查詢匹配方式(精確查詢、模糊查詢、不等于查詢)。示例如下所示:4.1.3 按實(shí)體類內(nèi)容查詢對(duì)象集合此時(shí)的查詢會(huì)將實(shí)體類中不為null的屬性作為查詢條件查詢,進(jìn)行精確匹配后,得出查詢結(jié)果。4.2 新增操作首先,構(gòu)造主實(shí)體對(duì)象;其次,若主對(duì)象有關(guān)聯(lián)對(duì)象則一并構(gòu)造好賦值給主對(duì)象;最后,調(diào)用容器的Add方法完成添加操作。4.3 修改操作修改操作首先構(gòu)造好對(duì)應(yīng)的實(shí)體對(duì)象,然后調(diào)用容器的Update操作
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 我國(guó)貿(mào)易應(yīng)收賬款證券化:實(shí)踐、挑戰(zhàn)與發(fā)展路徑探索
- 我國(guó)貨幣政策中介目標(biāo)選擇的實(shí)證探究與轉(zhuǎn)型思考
- 我國(guó)證券非公開(kāi)發(fā)行法律制度的構(gòu)建與完善:基于實(shí)踐與國(guó)際經(jīng)驗(yàn)的審視
- 我國(guó)證券公司直投業(yè)務(wù):現(xiàn)狀、機(jī)遇與挑戰(zhàn)的深度剖析
- 消化道醫(yī)學(xué)知識(shí)培訓(xùn)課件
- 加強(qiáng)檔案標(biāo)準(zhǔn)化管理制度
- 停車(chē)場(chǎng)訂單管理制度規(guī)范
- 基礎(chǔ)化學(xué)知識(shí)普及講座考試及答案
- 供應(yīng)商分級(jí)評(píng)審制度規(guī)范
- 村莊規(guī)范化運(yùn)行管理制度
- 新能源材料與器件制備技術(shù) 課件 第5章 鋰離子電池正極材料
- 消防監(jiān)控證試題及答案
- 中藥材儲(chǔ)存與養(yǎng)護(hù)規(guī)范
- 2025年藥品經(jīng)營(yíng)和使用質(zhì)量監(jiān)督管理辦法考核試題【含答案】
- 礦山智能化開(kāi)采2025年無(wú)人作業(yè)技術(shù)智能化礦山設(shè)備智能化技術(shù)路線圖報(bào)告
- 【火力發(fā)電廠短路電流計(jì)算過(guò)程案例1300字】
- T/CATEA 007-2023甘蔗脫毒健康種苗田間繁育技術(shù)規(guī)程
- 旅游行業(yè)股權(quán)合作方案設(shè)計(jì)范文
- 抖音公會(huì)考試試題及答案
- 部門(mén)建設(shè)標(biāo)準(zhǔn)化管理
- 財(cái)務(wù)年終總結(jié)概覽
評(píng)論
0/150
提交評(píng)論