PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Usando Dapper e Postgresql - tipo de dados citext


Você provavelmente precisará criar um CitextParameter que estenda ICustomQueryParameter. Essa API permite passar uma instância arbitrária de DbParameter para o Dapper - neste caso, seria uma instância de NpgsqlParameter com seu NpgsqlDbType definido como Citext.

Algo assim deve funcionar:
class CitextParameter : SqlMapper.ICustomQueryParameter
{
    readonly string _value;

    public CitextParameter(string value)
    {
        _value = value;
    }

    public void AddParameter(IDbCommand command, string name)
    {
        command.Parameters.Add(new NpgsqlParameter
        {
            ParameterName = name,
            NpgsqlDbType = NpgsqlDbType.Citext,
            Value = _value
        });
    }
}