zoukankan      html  css  js  c++  java
  • Attribute学习:SqlParameterAttribute 荣

    using System;
    using System.Data;
    using Debug = System.Diagnostics.Debug;

    namespace WebApplication1
    {
     /// <summary>
     /// 存储SQL语句参数信息的属性。
     /// 这些信息包括参数的名称、类型、方向、大小、精度等。
     /// </summary>
     [AttributeUsage(AttributeTargets.Parameter)]
     public class SqlParameterAttribute : Attribute
     {
      private string name;               // 参数名称       
      private bool paramTypeDefined;     // 是否参数的类型已经定义
      private SqlDbType paramType;       // 参数类型
      private int size;                  // 参数尺寸大小
      private byte precision;            // 参数精度
      private byte scale;                // 参数范围
      private bool directionDefined;     // 是否定义了参数方向
      private ParameterDirection direction;  // 参数方向

      public SqlParameterAttribute()
      {
       //
       // TODO: 在此处添加构造函数逻辑
       //
      }

      public SqlParameterAttribute(string name)
      {
       Name = name;
      }

      public SqlParameterAttribute(int size)
      {
       Size = size;
      }

      public SqlParameterAttribute(SqlDbType paramType)
      {
       ParamType = paramType;
      }

      public SqlParameterAttribute(string name, SqlDbType paramType)
      {
       Name = name;
       ParamType = paramType;
      }

      public SqlParameterAttribute(SqlDbType paramType, int size)
      {
       ParamType = paramType;
       Size = size;
      }

      public SqlParameterAttribute(string name, int size)
      {
       Name = name;
       Size = size;
      }

      public SqlParameterAttribute(string name, SqlDbType paramType, int size)
      {
       Name = name;
       ParamType = paramType;
       Size = size;
      }


      /// <summary>
      /// 参数名称
      /// </summary>
      public string Name
      {
       get
       {
        return name == null ? string.Empty : name;
       }
       set
       {
        name = value;
       }
      }


      /// <summary>
      /// 参数尺寸大小
      /// </summary>
      public int Size
      {
       get
       {
        return size;
       }
       set
       {
        size = value;
       }
      }


      /// <summary>
      /// 参数精度
      /// </summary>
      public byte Precision
      {
       get
       {
        return precision;
       }
       set
       {
        precision = value;
       }
      }


      /// <summary>
      /// 参数范围
      /// </summary>
      public byte Scale
      {
       get
       {
        return scale;
       }
       set
       {
        scale = value;
       }
      }


      /// <summary>
      /// 参数方向
      /// </summary>
      public ParameterDirection Direction
      {
       get
       {
        Debug.Assert(directionDefined);
        return direction;
       }
       set
       {
        direction = value;
        directionDefined = true;
       }
      }


      /// <summary>
      /// 参数类型
      /// </summary>
      public SqlDbType ParamType
      {
       get
       {
        Debug.Assert(paramTypeDefined);
        return paramType;
       }
       set
       {
        paramType = value;
        paramTypeDefined = true;
       }
      }

      /// <summary>
      /// 是否已命名
      /// </summary>
      public bool IsNameDefined
      {
       get
       {
        return (name != null && name.Length != 0);
       }
      }

      /// <summary>
      /// 是否已设定参数类型
      /// </summary>
      public bool IsTypeDefined
      {
       get
       {
        return paramTypeDefined;
       }
      }

      /// <summary>
      /// 是否已设定参数方向
      /// </summary>
      public bool IsDirectionDefined
      {
       get
       {
        return directionDefined;
       }
      }

      /// <summary>
      /// 是否已设定范围
      /// </summary>
      public bool IsScaleDefined
      {
       get
       {
        return scale != 0;
       }
      }

      /// <summary>
      /// 是否已设定精度
      /// </summary>
      public bool IsPrecisionDefined
      {
       get
       {
        return precision != 0;
       }
      }

      /// <summary>
      /// 是否已设定大小
      /// </summary>
      public bool IsSizeDefined
      {
       get { return size != 0; }
      }
     }
    }

  • 相关阅读:
    验证字符串空“” 的表达式
    should not this be a private conversation
    【转】你真的了解word-wrap 和 word-break 的区别吗
    To live is to function,that is all there is in living
    [转] windows 上用程序putty使用 ssh自动登录Linux(Ubuntu)
    Vim/gvim容易忘记的快捷键
    [转] Gvim for windows中块选择的方法
    问题集
    web services
    Trouble Shooting
  • 原文地址:https://www.cnblogs.com/admin11/p/200255.html
Copyright © 2011-2022 走看看