Namespace Npgsql.Internal.TypeHandling
Classes
NpgsqlLengthCache
An array of cached lengths for the parameters sending process.
When sending parameters, lengths need to be calculated more than once (once for Bind, once for an array, once for the string within that array). This cache optimized that. Lengths are added to the cache, and then retrieved at the same order.
NpgsqlSimpleTypeHandler<TDefault>
Base class for all simple type handlers, which read and write short, non-arbitrary lengthed values to PostgreSQL. Provides a simpler API to implement when compared to NpgsqlTypeHandler - Npgsql takes care of all I/O before calling into this type, so no I/O needs to be performed by it.
NpgsqlSimpleTypeHandlerWithPsv<TDefault, TPsv>
A simple type handler that supports a provider-specific value in addition to its default value.
This is necessary mainly in cases where the CLR type cannot represent the full range of the
PostgreSQL type, and a custom CLR type is needed (e.g. DateTime and
NpgsqlDateTime). The provider-specific type TPsv
will be returned
from calls to GetProviderSpecificValue(Int32).
NpgsqlTypeHandler
Base class for all type handlers, which read and write CLR types into their PostgreSQL binary representation. Type handler writers shouldn't inherit from this class, inherit NpgsqlTypeHandler or NpgsqlSimpleTypeHandler<TDefault> instead.
NpgsqlTypeHandler<TDefault>
Base class for all type handlers, which read and write CLR types into their PostgreSQL binary representation. Unless your type is arbitrary-length, consider inheriting from NpgsqlSimpleTypeHandler<TDefault> instead.
TypeHandlerResolver
An Npgsql resolver for type handlers. Typically used by plugins to alter how Npgsql reads and writes values to PostgreSQL.
TypeHandlerResolverFactory
TypeMappingInfo
Interfaces
INpgsqlSimpleTypeHandler<T>
Type handlers that wish to support reading other types in additional to the main one can implement this interface for all those types.
INpgsqlTypeHandler<T>
Type handlers that wish to support reading other types in additional to the main one can implement this interface for all those types.