快速业务通道

壓ASP.NET嶄糞?宥喘議嗤丼來丕刮

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-20
的Array中是否存在某一值的函数,以及 IsDate, IsDateTime, IsNumeric, IsDigital等函数很容易写,不在此赘述。

第二部分:页面通用性

基于上述的两个基本方法,我们可以提供的调用接口如下:

protected bool CheckValidSqlField(string strValue, string strMsg, string strTypeFormat, 

Control ctrl)
    {
      bool bReturn = fsUniversal.CheckValidValue(strValue, strTypeFormat);
  
      bReturn = bReturn && fsUniversal..CheckValidSqlField(strValue);
      if (bReturn == false)
      {
        if (strMsg != null && strMsg.Length > 0) ShowMsg(strMsg);
  
        if (ctrl != null) ctrl.Focus();
      }
  
      return bReturn;
    }

我把这个方法放在了Web开发框架的页面衍生的基类中,用于检验数据格式化有效性和安全性校验,对 于不合法的输入值,通过ShowMsg方法来弹出告警信息--如果调用者提供了告警信息,以及如果非法的话 ,接下来页面的焦点应该放在什么控件上。当然,尽管告警信息是定制化的可以自定义的,同时也完全可 以不告警;同样的,错误聚焦也是这样。

这个方法的确很好,也提供了很友好的交互性,但是每次只能判断一个输入值,您是否感觉到功能太 单薄?对了,我们应该提供一个可以批量校验的方法,为此我们定义一个类,如下:

    public class SqlFieldCheck
    {
      string strInputValue = "", strMessage = null, strValueType = "";
      Control ctrl = null;
  
      public string Value { get { return strInputValue; } }
      public string Type { get { return strValueType; } }
      public string Message { get { return strMessage; } }
      public Control Control { get { return ctrl; } }
  
      void InitData(string strValue, string strMsg, string strType, Control ctr)
      {
        ctrl = ctr;
        strMessage = strMsg;
        strValueType = strType;
        strInputValue = strValue;
      }
  
      public SqlFieldCheck(string strValue, string strMsg, string strType, Control 

ctr)
      {
        InitData(strValue, strMsg, strType, ctr);
      }
  
      public SqlFieldCheck(string strValue, string strMsg, Control ctr)
      {
        InitData(strValue, strMsg, null, ctr);
      }
  
      public SqlFieldCheck(string strValue, string strMsg, string strType)
      {
        InitData(strValue, strMsg, strType, null);
      }
  
      public SqlFieldCheck(string strValue, Control ctr, string strType)
      {
        InitData(strValue, null, strType, ctr);
      }
  
      public SqlFieldCheck(string strValue, string strMsg)
      {
        InitData(strValue, strMsg, null, null);
      }
  
      public SqlFieldCheck(string strValue, Control ctr)
      {
        InitData(strValue, null, null, ctr);
      }
  
      public SqlFieldCheck(string strValue)
      {
        InitData(strValue, null, null, 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号