<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      CJCMS系列--談談后端驗證

        4個月過去了,我解放出來一會兒,有點閑空。我的博客也是時候更新一下了,今天我想講講項目中怎么安排后端驗證。

        很多人對于后端驗證很煩惱,包括很多項目經理。因為處理不好后端驗證,代碼的可閱讀程度簡直難以形容。

        我認為驗證者,有的放矢也。對誰驗證就在哪個上面做文章。我一直認為應該把后端驗證放到數據傳輸對象層面去做,每個數據傳輸對象的屬性都得在設計的時候做好驗證設置,非空就得非空,字符且長度范圍等都得設計好。(可以使用微軟提供的企業驗證類庫或者開源的一些類庫)

          數據傳輸對象的構造函數可以申明兩個,其一為顯示空構造;其二為傳參構造;關鍵就在傳參構造這里,在傳參構造之后我們調用統一的泛化過的驗證方法。以this傳出,驗證失敗自然進入異常處理框架中,驗證通過繼續邏輯。

       

       

      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Web;
      
      namespace MvcApplication1.Models
      {
          public class LogOnDTO : IDTO
          {
              /// <summary>
              /// 登陸時發送服務端的用戶名
              /// </summary>
              [NotNullValidator]
              public string Name;
      
              /// <summary>
              /// 登陸時明文發送服務端的密碼(可以接受js加密后字符)
              /// </summary>
              [NotNullValidator]
              public string PlaintextPwd;
      
              /// <summary>
              /// 登陸時發送服務端的是否保存登陸狀態
              /// </summary>
              [NotNullValidator]
              public bool IsRemmber;
      
      
              public LogOnDTO()
              { }
      
              public LogOnDTO(string name,string plaintpwd,bool isr)
              {
                  this.Name = name;
                  this.PlaintextPwd = plaintpwd;
                  this.IsRemmber = isr;
      
                  ValidationUtil<LogOnDTO>.DoValidate(this);
              }
          }
      }

       

       

       1 using System;
       2 using System.Collections.Generic;
       3 using System.Linq;
       4 using System.Web;
       5 
       6 namespace MvcApplication1.Models
       7 {
       8     public static class ValidationUtil<T> where T : IDTO
       9     {
      10 
      11         public static void  DoValidate(IDTO dto)
      12         {
      13             if (dto != null)
      14             {  }
      15             else
      16             { throw new Exception("驗證出錯- - 報送哪個字段什么問題等等"); }
      17         }
      18     }
      19 }

       

         這樣的設計呢,只讓程序員在設計傳輸對象的時候,注意設計字段的限制,其余的都由系統去處理好了,這樣減輕了程序員的代碼量,同時容易發現問題,解決問題。

      posted @ 2013-03-19 10:35  不要理我  閱讀(1108)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 高清自拍亚洲精品二区| 自拍视频一区二区三区四区| av大片| 沅陵县| 青春草在线视频观看| 天天澡日日澡狠狠欧美老妇| 国产性天天综合网| 中文字幕日韩区二区三区| 日韩中文字幕一二三视频| 久久66热人妻偷产精品| 成人亚洲一级午夜激情网| 虎白女粉嫩尤物福利视频| 久久精品中文字幕免费| 久久国产精品伊人青青草| 精品人妻av区乱码| 十八禁在线观看视频播放免费 | 国产免费无遮挡吸奶头视频| 亚洲午夜成人精品电影在线观看 | 四虎国产精品永久地址99| 亚洲夂夂婷婷色拍ww47| 欧美黑人又粗又大久久久| 狠狠综合久久综合88亚洲爱文| 97成人碰碰久久人人超级碰oo | 国产精品毛片在线看不卡| 亚洲乱码中文字幕小综合| 国产精成人品日日拍夜夜| 亚洲av伦理一区二区| 中文国产日韩欧美二视频| 亚洲av色在线播放一区| a级国产乱理伦片在线观看al| 国产成人精品午夜福利| 内射合集对白在线| 老色鬼在线精品视频| 色欲综合久久中文字幕网| 成全影视大全在线观看| 亚洲欧洲中文日韩久久av乱码| av中文字幕在线二区| 免费人成在线观看品爱网| 亚洲熟妇少妇任你躁在线观看无码| 国产明星精品无码AV换脸| 国产精品小视频一区二页|