欧美特黄不卡,涩涩视频在线,成人国产精品一区二区网站,亚洲一区二区三区欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

基于Grove的.NET應用程序開發提示

基于Grove的.NET應用程序開發提示

更新時間:2020-01-14 文章作者:未知 信息來源:網絡 閱讀次數:

基于Grove的.NET應用程序開發提示



1. 盡量避免新增映射實體類,主要表現在關系映射實體。當程序需要查詢符合某種條件的記錄時,往往需要通過關系映射實體進行查詢,當該關系實體在其他調用者使用時,有時又因為缺少某些字段而需要向該關系映射實體新增查詢字段或重新建立實體,所以在關系實體建立的時候,應盡量考慮其他調用者的需求,這樣可以有效的避免關系映射實體的重復或因關系實體的改變而導致的其他不安定因素。

2. 避免在數據操作層中出現同樣的功能(方法),盡管這些功能可能不屬于同一個管理類。當調用者需要新增或修改(包括刪除)一個實體(非關系實體)時,應首先檢查Façade層中是否已經有該功能的存在,這要求數據操作層中所有管理類的編寫者明確的注釋好每一個方法的功能描述,要排除歧義。

3. 在實體映射時,如果該實體映射某個主表,一般應明確該主表對應的子表映射項。如主表表名為Main,子表表名為Sub,對應的映射實體為Main.class和Sub.class,該Main實體應申請子表項如下(例):

ArrayList _childs=null;

public ArrayList Childs

{

get{

if(this. _childs==null)

{

//oo的初始代碼

this._childs=new ArrayList();

this. _childs=oo.RetrieveChildObjects(this.id,this._ childs,typeof(Sub));

//oo的釋放代碼

}

return this. _childs;

}

set{this._childs=value;}

}

4. 實體操作的定義,主子表關系應有事務支持,如下:

public void AddMain(Main m)

{

//oo的初始代碼

oo.BeginTransaction();

try{

oo.InsertObject(m);

oo.InsertObjects(m.Childs);

oo.Commit();

}

catch(Exception e)

{

oo.Rollback();

throw e;

}

oo.Dispose();//oo的釋放代碼

}

5. 層間數據的傳入傳出,當某個功能需要實現通過某個實體的KeyField返回該實體時,傳入的應是該實體的KeyField;當某個實體的新增或更新時,應傳入該實體的實例。

6. 邏輯層Rule的定義


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

本類教程下載

系統下載排行

主站蜘蛛池模板: 司法| 拜泉县| 沙雅县| 兴义市| 万宁市| 泸水县| 雷州市| 东莞市| 板桥市| 扶沟县| 青铜峡市| 花莲县| 云阳县| 玛纳斯县| 赤城县| 肃宁县| 海林市| 沙田区| 贵定县| 二手房| 义马市| 肃宁县| 东乡| 泗洪县| 祥云县| 邓州市| 茶陵县| 包头市| 突泉县| 平阴县| 班戈县| 临海市| 乌兰县| 东宁县| 晋中市| 高台县| 栾城县| 建德市| 自治县| 大埔区| 南昌县|