示例#1
0
        public EnumType GetEnum <EnumType>(int i, SqlDbType fieldType, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue) where EnumType : struct
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(default(EnumType));
            }

            EnumType value = default(EnumType);

            switch (fieldType)
            {
            case SqlDbType.TinyInt:
                value = (EnumType)(object)(short)GetByte(i, nullValueBehaviour);
                break;

            case SqlDbType.SmallInt:
                value = (EnumType)(object)GetInt16(i, nullValueBehaviour);
                break;

            case SqlDbType.Int:
                value = (EnumType)(object)GetInt32(i, nullValueBehaviour);
                break;

            case SqlDbType.BigInt:
                value = (EnumType)(object)GetInt64(i, nullValueBehaviour);
                break;
            }

            return(value);
        }
示例#2
0
        public int GetInt32(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, int defaultValue = 0)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetInt32(i));
        }
示例#3
0
        public float GetFloat(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, float defaultValue = 0)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return((float)_reader.GetDouble(i));
        }
示例#4
0
        public double GetDouble(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, double defaultValue = 0)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetDouble(i));
        }
示例#5
0
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public short GetByte(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, byte defaultValue = 0)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetByte(i));
        }
示例#6
0
        public bool GetBoolean(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, bool defaultValue = false)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetBoolean(i));
        }
示例#7
0
        public string GetString(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, string defaultValue = null)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetString(i));
        }
示例#8
0
        public long GetInt64(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, long defaultValue = 0)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            return(_reader.GetInt64(i));
        }
示例#9
0
        public DateTime?GetUtcDateTime(int i, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, DateTime?defaultValue = null)
        {
            if (nullValueBehaviour == NullValueBehaviour.ReturnDefaultValue &&
                _reader.IsDBNull(i))
            {
                return(defaultValue);
            }

            DateTime date = _reader.GetDateTime(i);

            if (date.Kind == DateTimeKind.Unspecified)
            {
                date = DateTime.SpecifyKind(date, DateTimeKind.Utc);
            }

            return(date);
        }
示例#10
0
 public bool GetBoolean(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, bool defaultValue = false)
 {
     return(GetBoolean(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#11
0
 public int GetInt32(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, int defaultValue = 0)
 {
     return(GetInt32(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#12
0
 public short GetInt16(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, short defaultValue = 0)
 {
     return(GetInt16(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#13
0
 public DateTime?GetUtcDateTime(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, DateTime?defaultValue = null)
 {
     return(GetUtcDateTime(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#14
0
 public string GetString(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, string defaultValue = null)
 {
     return(GetString(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#15
0
 public double GetDouble(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, double defaultValue = 0)
 {
     return(GetDouble(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#16
0
 public float GetFloat(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, float defaultValue = 0)
 {
     return(GetFloat(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#17
0
 public long GetInt64(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, long defaultValue = 0)
 {
     return(GetInt64(GetColumn(column), nullValueBehaviour, defaultValue));
 }
示例#18
0
 public EnumType GetEnum <EnumType>(string column, SqlDbType fieldType, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue) where EnumType : struct
 {
     return(GetEnum <EnumType>(GetColumn(column), fieldType, nullValueBehaviour));
 }
示例#19
0
 public short GetByte(string column, NullValueBehaviour nullValueBehaviour = NullValueBehaviour.ReturnDefaultValue, byte defaultValue = 0)
 {
     return(GetByte(GetColumn(column), nullValueBehaviour, defaultValue));
 }