輸出代碼
通過工具菜單中的生成代碼功能打開代碼輸出對話框:
在對話框中選擇輸入目錄,默認為在解決方案屬性中設(shè)計的輸出目錄,點擊“生成”按鈕完成解決方案的生成,輸入如下目錄結(jié)構(gòu):
我們在VS環(huán)境中打開AgilePM解決方案:
模型修改
對象設(shè)計器生成的代碼采用了分部類的技術(shù)方案,即同一個數(shù)據(jù)對象把生成的4個代碼文件分解成8個代碼文件,其中4個代碼文件生成與數(shù)據(jù)對象屬性定義相關(guān),建議不做修改,文件名中帶有.Generator.cs,并且全部組織在項目的Generat文件夾中,程序代碼中有以下注釋:
//------------------------------------------------------------------------------
// <auto-generated>
// 此代碼由SmartEAS.NET/AgileEAS.NET數(shù)據(jù)模型設(shè)計工具生成。
// 運行時版本:2.0.50727.3053
//
// 對此文件的更改可能會導(dǎo)致不正確的行為,并且如果
// 重新生成代碼,這些更改將會丟失。
// </auto-generated>
//------------------------------------------------------------------------------
另外4個文件用于存儲用戶自定義的數(shù)據(jù)訪問代碼,文件名不帶.Generator.cs,生成的代碼位于項目的根目錄之中。
為什么要做這樣的設(shè)定呢,這得益長期的開發(fā)實踐,市面上有很多代碼生成工具,雖然說生成器工具可以加速開發(fā),但是生成的代碼是絕對不會滿足復(fù)雜應(yīng)用,程序員必須對生成的代碼增加新的功能或者修改,那么當(dāng)數(shù)據(jù)定義模型發(fā)生改變之后,重新生成的代碼就會把程序員所做的修改覆蓋。
采用分部類的方案進行分解之后,我們把與數(shù)據(jù)模型定義與程序員的特殊業(yè)務(wù)代碼進行了分離,當(dāng)模型發(fā)生改變之后,重新生成的代碼保留了程序員的修改,只覆蓋Generat文件夾中的代碼文件。