六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

XCodeFactory 強化靜態檢查!

[摘要]如果眾多在運行時的錯誤/異常能在編譯時就檢查出來,將會大大減少程序中潛伏的危險。這是我們寫程序時常常要注意的問題。 通過DataEntrance來使用XCodeFactory很方便,如為獲取某ID為200308160033的學生的姓名,通常這樣做:string name = Dat...
          如果眾多在運行時的錯誤/異常能在編譯時就檢查出來,將會大大減少程序中潛伏的危險。這是我們寫程序時常常要注意的問題。

        通過DataEntrance來使用XCodeFactory很方便,如為獲取某ID為200308160033的學生的姓名,通常這樣做:
string name = DataEntrance.GetFieldValue(typeof(Student) ,"200308160033" ,"Name").ToString() ;


       GetFieldValue的第三個參數是字段的名稱,如果以后因為業務的需要,該字段被改名或被刪除了,則上面的代碼仍然會通過編譯,只有在運行拋出異常時,才會發現此錯誤。這給程序留下了太多潛伏的危險,因為我們的業務經常改變,而我們的數據庫表中的字段也經常發生變化。
        我希望在編譯的時候就能發現字段被刪除或修改而不能通過編譯,怎么做了?我是這樣解決的,在生成數據對象類的時候,為每個字段生成一個對應的const string字段,該字段的值就是對應字段的名字。如:
public const string _Name = "Name" ;

       GetFieldValue的第三個參數是字段的名稱,如果以后因為業務的需要,該字段被改名或被刪除了,則上面的代碼仍然會通過編譯,只有在運行拋出異常時,才會發現此錯誤。這給程序留下了太多潛伏的危險,因為我們的業務經常改變,而我們的數據庫表中的字段也經常發生變化。
        我希望在編譯的時候就能發現字段被刪除或修改而不能通過編譯,怎么做了?我是這樣解決的,在生成數據對象類的時候,為每個字段生成一個對應的const string字段,該字段的值就是對應字段的名字。如:
public const string _Name = "Name" ;


這樣上面的調用可改成:
string name = DataEntrance.GetFieldValue(typeof(Student) ,"200308160033" ,Student._Name).ToString() ;

如此一來,如果Name字段被刪除或者被修改,那么編譯就能發現這個錯誤。還有更好的解決方案嗎?歡迎你和我討論。





主站蜘蛛池模板: 欧洲亚洲一区 | 无码免费一区二区三区免费播放 | 日本在线视频网址 | 综合久久综合久久 | 午夜影院在线免费 | 欧洲久久| 中文字幕日本一区波多野不卡 | 亚洲91在线视频 | 涩涩欧美 | 天天久 | 一二三四视频中文字幕在线看 | 热re久久精品国产99热 | 亚洲日本激情 | 欧美视频一 | 又硬又粗又长又爽免费看 | 日产国语一区二区三区在线看 | 一二三四视频日本高清 | 午夜精品久久久久久久99热下载 | 奇米狠狠色| 欧美性群另类大交人妖 | 色免费网站| 日韩欧美一区二区三区不卡视频 | 窝窝午夜色视频国产精品东北 | 中日韩一线二线三线视频 | 亚洲精品123区在线观看 | 欧洲日韩视频二区在线 | 香蕉免费一级视频在线观看 | 欧美在线1 | 中文字幕伦伦在线中文字 | 伊人久久综合 | 欧洲性xxxx免费视频下载软件 | 亚洲成a人片毛片在线 | 青青青免费在线视频 | 日本天堂影院在线播放 | 一级做a免费观看大全 | 欧美亚洲不卡 | 日本卡一卡2卡3卡4精品卡无人区 | 日本色www| 日本午夜免费福利视频 | 色干网 | 亚洲欧美综合一区 |