信息管理系統(tǒng)的迅速開發(fā)
發(fā)表時間:2024-02-22 來源:明輝站整理相關軟件相關文章人氣:
[摘要]基于cs\bs架構的信息管理系統(tǒng)中,讓軟件人員感到頭疼,工作量繁多而又是必須作的項目:基于數據庫的查詢,添加,更新,刪除,真的是一場噩夢,因為繁多的字段,就算使用分層次的關系對象映射,也是一場很大的工作。在我們最近的項目中,就有一個這樣的例子,它是一個學生信息的管理系統(tǒng),包括了獎學金,勤工助學,貸...
基于cs\bs架構的信息管理系統(tǒng)中,讓軟件人員感到頭疼,工作量繁多而又是必須作的項目:基于數據庫的查詢,添加,更新,刪除,真的是一場噩夢,因為繁多的字段,就算使用分層次的關系對象映射,也是一場很大的工作。
在我們最近的項目中,就有一個這樣的例子,它是一個學生信息的管理系統(tǒng),包括了獎學金,勤工助學,貸款,獎懲等各方面的學生信息維護。針對整個系統(tǒng)查詢多,添加多,字段繁雜的特點(光貸款的字段就有多達70多個,主要適用于銀行上報,學校內部管理維護),用一般的開發(fā)方式已經不能滿足需要。針對整個系統(tǒng)的要求,我們開發(fā)了一個DBForm的數據庫控制模塊,通過同界面一定的設置相配合,實現了字段任意添加,實際總代碼行數不會超過20-30行的目標(根據Join標的數據而定)
一段用于查詢的代碼實際使用如下
下面的這些代碼是放置在窗體初始化的時候的
myDBForm = new DBForm(FormType.WinForm,"Smis_AdminLogin","UserList");
myDBForm.AddJoinInfo("DepartmentID","","DepartmentID","CodeInstitute");
myDBForm.AddJoinInfo("GroupID","","GroupID","CodeAdminGroup");
myDBForm.IniDBForm();
下面這些用于具體的查詢操作:
if (NewQuery)
{
myDBForm.NewQueryInit(); //新查詢所需要做的準備工作
myDBForm.AddQueryContainer(this.gbxQuery);
//加入放置修改控件集合的容器
}
string SelectedColumn = @"Smis_AdminLogin.*,CodeInstitute.DepartmentName,CodeAdminGroup.GroupName";
myDBForm.ExecuteQuery(SelectedColumn,"");
查詢出來的數據就放置在DBForm的QueryDBData屬性中,可以直接綁定到想要查看的數據列
如果要執(zhí)行添加/刪除操作,DBForm的初始化應該加入下列代碼
myDBForm.AddModifyContainer(gbxModify);//加入放置修改控件集合的容器
myDBForm.BuildModifyCommands("Smis_AdminLogin","LoginName");
然后是具體的數據庫操作:
object AdminID = myDBForm.ExecuteInsert();
myDBForm.ExecuteDelete(CurrentUser.UserEntity.LoginName);
myDBForm.ExecuteUpdate(CurrentUser.UserEntity.LoginName);
上面3條語句分別完成了對數據庫的插入,更新,刪除工作
通過DBForm的使用,大大簡化了我們系統(tǒng)數據庫方面的開發(fā),對于進行數據操作時的業(yè)務規(guī)劃問題,我們采用了常見的關系/對象映射模型,不過映射的都是數據庫的小子集,這些是日常工作的核心部分,并且變動的幾率不大。
附上DBForm的結構圖