Beispiel #1
0
        public override object GetParameterValue(DbCommand command, string parameterName)
        {
            if (command == null)
            {
                throw new ArgumentNullException(nameof(command));
            }
            object obj = base.GetParameterValue(command, parameterName);
            ParameterTypeRegistry parameterTypeRegistry = this.GetParameterTypeRegistry(command.CommandText);

            if (parameterTypeRegistry != null && parameterTypeRegistry.HasRegisteredParameterType(parameterName))
            {
                DbType registeredParameterType = parameterTypeRegistry.GetRegisteredParameterType(parameterName);
                if (DbType.Guid == registeredParameterType)
                {
                    obj = OracleDatabase.ConvertByteArrayToGuid(obj);
                }
                else if (DbType.Boolean == registeredParameterType)
                {
                    obj = (object)Convert.ToBoolean(obj, (IFormatProvider)CultureInfo.InvariantCulture);
                }
            }
            return(obj);
        }