<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

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

      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字段被刪除或者被修改,那么編譯就能發現這個錯誤。還有更好的解決方案嗎?歡迎你和我討論。





      日韩精品一区二区三区高清