public void BindParameters(OracleCommand cmd, List <PoolEntry <object[]> > rows)
        {
            cmd.ArrayBindCount = rows.Count;
            var paramIndex = 0;

            foreach (var column in _columnNameToMetadataIndexMap)
            {
                object[] arr;
                if (column.Value >= 0)
                {
                    arr = _cachedParamsArrayList[column.Value];
                    var rowIndex = 0;
                    foreach (var row in rows)
                    {
                        arr[rowIndex++] = UseNativeTypeConvertor
                            ? OracleUtils.GetNativeValue(_sourceValueToParamValueDelegate(column.Value, row.Value))
                            : _sourceValueToParamValueDelegate(column.Value, row.Value);
                    }
                }
                else
                {
                    arr = null;
                }

                cmd.Parameters[paramIndex++].Value = arr;
            }
        }
 public override object GetNativeValue(object value)
 {
     return(OracleUtils.GetNativeValue(value));
 }