程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 從丑陋到優雅,讓代碼越變越美續集之服務器端數據校驗

從丑陋到優雅,讓代碼越變越美續集之服務器端數據校驗

編輯:關於ASP.NET

數據校驗是兩方面的,客戶端校驗雖然可以大大減少服務器回調次數提升用戶體驗.但是客戶端校驗並 不是萬能的,從原理上說,客戶端返回的數據都是不可信任的,服務器端校驗必不可少.(關於客戶端校驗的 總結:從丑陋到優雅,讓代碼越變越美(客戶端檢測方法思考) )

總的來說,服務器端代碼也經歷了相似的幾個過程:

以判斷一個輸入是否是可以轉換成整數為例,開始大家都會續項強寫:

string str = txtTest.Text;
if (!string.IsNullOrEmpty(str))
{
    int? intResult = 0;
    if (int.TryParse(str, out intResult))
    {
        if(intResult>0 && intResult<100)
        {
            //success
        }
        else
        {
            ShowMessage("輸入必須大於0小於100");
        }
    }
    else
    {
        ShowMessage("不能格式化為Int類型");
    }
}
else
{
    ShowMessage("輸入為空");
}

看著就夠麻煩,然後大家都會總結經驗,將檢測寫成一個一個的函數:

protected bool IsInt(string str)
{
    if (!string.IsNullOrEmpty(str))
    {
        int? intResult = 0;
        if (int.TryParse(str, out intResult))
        {
            return true;
        }
    }

    return false;
}

protected bool IsInRange(int max,int min,int input)
{
    if (input > min && input < max)
        return true;
    else
        return false;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved