ClientTypeToCockroachDbTypeResolver

A class used to resolve a .NET CLR type into its equivalent CockroachDbType.

This IResolver<Type, CockroachDbType?> implementation converts a .NET CLR type into its equivalent RepoDb.Connector.CockroachDb.CockroachDbType (e.g. typeof(Guid) → CockroachDbType.Uuid, typeof(int) → CockroachDbType.Integer, typeof(byte[]) → CockroachDbType.Bytea).

There is no CLR representation for arrays, the spatial types, or ltree on this connector — an unresolvable type throws an InvalidOperationException.

Usability

var resolver = new ClientTypeToCockroachDbTypeResolver();
var cockroachDbType = resolver.Resolve(typeof(int)); // CockroachDbType.Integer