RepoDB RepoDB
Quickstart
Install RepoDB and get a working CRUD example running against your database.
Overview Simple, fast, and straightforward to learn — install the core package, install your provider, call its setup method once, then start calling repository methods. Installation Learn on how to install RepoDB library on your Project/Solution. ClickHouse Learn on how to work with ClickHouse databases using RepoDB library. DB2 Learn on how to work with IBM Db2 databases using RepoDB library. DuckDB Learn on how to work with DuckDB databases using RepoDB library. EnterpriseDB Learn on how to work with EnterpriseDB (EDB Postgres Advanced Server) databases using RepoDB library. Firebird Learn on how to work with Firebird databases using RepoDB library. MariaDB Learn on how to work with MariaDB databases using RepoDB library. MySQL Learn on how to work with MySQL databases using RepoDB library. Oracle Learn on how to work with Oracle databases using RepoDB library. PostgreSQL Learn on how to work with PostgreSQL databases using RepoDB library. SAP HANA Learn on how to work with SAP HANA databases using RepoDB library. SQLite Learn on how to work with SQLite databases using RepoDB library. SQL Server Learn on how to work with SQL Server databases using RepoDB library. Vertica Learn on how to work with Vertica databases using RepoDB library. Telemetry Learn on how to start capturing and publishing RepoDB operation telemetry using RepoDb.Telemetry.Default.
Features
Core capabilities of the library, explained feature by feature.
Batch Operations Packing thousands of single-row statements into a handful of round trips, without changing a single call site. Bulk Operations Set-based inserts, updates, deletes, and merges that bypass row-by-row round trips entirely. Caching A key/value layer in front of your read operations that skips the round trip entirely once something is already in memory. Class Handlers Intercepts the moment a whole entity is read from or written to the database, for validation or side effects at the model level. Class Mapping Attribute-based control over how a class and its properties line up with tables, columns, keys, and handlers. Connection Persistency Controls whether a repository opens a fresh connection per call or holds one open for its entire lifetime. Dynamics CRUD against a literal table name and anonymous objects, for the calls that don't warrant a full entity model. Enumeration Enum properties round-trip as strings by default, with an escape hatch to force numeric storage or fully custom handling. Expression Trees Four different ways to express a filter, from a plain anonymous object to fully composable query trees. Hints Table hints like NOLOCK or TABLOCK, passed straight through to SQL Server without dropping into raw SQL. Implicit Mapping Attribute-free mapping for class names, columns, keys, and types, configured entirely through mapper classes. Multiple Query Fetch a parent and its related rows in a single round trip instead of one query per relationship. Property Handlers Custom, per-property conversion logic for the cases where the default type mapping isn't enough. Repositories A dedicated class between your application and the database, so every data access call funnels through one place. Targeted Operations Naming exactly which columns an operation should touch, without a change tracker doing the diffing behind your back. Telemetry Opt-in, drop-in telemetry that captures every operation and publishes it to a collector and Grafana dashboard — no custom trace class required. Tracing Hooks before and after every execution for logging, auditing, or cancelling a command outright. Transaction Ordinary ADO.NET transactions, shared across as many repository or connection calls as you need. Type Mapping Maps a .NET CLR type, or a single property, to its exact equivalent database type.
Operations
Every operation RepoDB exposes, grouped by the core library and each database provider.
Core
CoreThe provider-agnostic CRUD and aggregate operations every database provider builds on — the foundation of RepoDB as a Productivity Platform, not just an ORM. AverageThis method computes the average value of the target field. AverageAllThis method computes the average value of the target field across all rows. BatchQueryThis method queries rows from the database in batches. CountThis method counts the number of rows in a table. CountAllThis method counts all rows in a table. DeleteThis method deletes rows from a table. DeleteAllThis method deletes all rows, or a specified set of rows by primary key, from a table. ExecuteNonQueryThis method executes a raw SQL statement directly against the database and returns the number of rows affected. It supports all RDBMS data providers. ExecuteQueryThis method executes a raw SQL statement directly against the database and returns an IEnumerable object. It supports all RDBMS data providers. ExecuteQueryFirstThis method executes a raw SQL statement directly against the database and returns only the first row as a dynamic or TEntity object. It supports all RDBMS data providers. ExecuteQuerySingleThis method executes a raw SQL statement directly against the database and returns the single row as a dynamic or TEntity object, enforcing that exactly one row is returned. It supports all RDBMS data providers. ExecuteQueryMultipleThis method executes multiple raw SQL statements against the database in a single round-trip and returns a QueryMultipleExtractor object. It supports all RDBMS data providers. ExecuteReaderThis method executes a raw SQL statement directly against the database and returns a DbDataReader object. It supports all RDBMS data providers. ExecuteScalarThis method executes a raw SQL statement directly against the database and returns the value of the first column of the first row from the result set. It supports all RDBMS data providers. ExistsThis method checks whether matching rows exist in a table. InsertThis method inserts a data entity object as a new row in the table. InsertAllThis method inserts multiple data entity objects as new rows in the table. MaxThis method computes the maximum value of the target field. MaxAllThis method computes the maximum value of the target field across all rows. MergeThis method inserts a new row or updates an existing row in the table. It operates as an UPSERT and does not perform any deletion. MergeAllThis method inserts multiple data entity objects as new rows or updates existing rows in the table. It operates as an UPSERT and does not perform any deletion. MinThis method computes the minimum value of the target field. MinAllThis method computes the minimum value of the target field across all rows. QueryThis method queries rows from a table. QueryFirstThis method queries a table and returns only the first row as a dynamic or TEntity object. QuerySingleThis method queries a table and returns the single row as a dynamic or TEntity object, enforcing that exactly one row is returned. QueryAllThis method queries all rows from a table. QueryMultipleThis method queries data as multiple result sets from the table based on the given target types. SumThis method computes the sum of the target field. SumAllThis method computes the sum of the target field across all rows. TruncateThis method truncates a table in the database. UpdateUpdates an existing row in the table. UpdateAllUpdates multiple existing rows in the table in a single call.
ClickHouse
ClickHouseFor ClickHouse via RepoDb.ClickHouse.BulkOperations, every row-load goes through this package's internal ClickHouseBulkCopy class — a thin adapter over ClickHouse.Driver's own native… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.ClickHouse.BulkOperations. This package also has a dedicated BulkDeleteByKey… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for RepoDb.ClickHouse.BulkOperations. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for RepoDb.ClickHouse.BulkOperations. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for… BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.ClickHouse.BulkOperations.
DB2
Db2For Db2, the underlying implementation is leveraging the DB2BulkCopy class of the IBM Data Server .NET Provider (IBM.Data.Db2 namespace). BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for Db2. Db2 also has a dedicated BulkDeleteByKey operation for deleting by primary key. BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported only for Db2. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for Db2. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for Db2. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for Db2.
EnterpriseDB
EnterpriseDBRepoDB's standard operations (Query, Insert, Merge, Update, Delete, etc.) all work against EDBConnection once UseEnterpriseDb() has been called. BulkInsert, BulkMerge, BulkUpdate, BulkDelete and… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for EnterpriseDB. EnterpriseDB also has a dedicated BulkDeleteByKey operation for deleting by… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for EnterpriseDB. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for EnterpriseDB. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for EnterpriseDB. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for EnterpriseDB.
Firebird
FirebirdRepoDB's standard operations (Query, Insert, Merge, Update, Delete, etc.) all work against FbConnection once UseFirebird() has been called. BulkInsert, BulkMerge, BulkUpdate, BulkDelete and… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for Firebird. Firebird also has a dedicated BulkDeleteByKey operation for deleting by primary… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for Firebird. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for Firebird. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for Firebird. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for Firebird.
MariaDB
MariaDbFor MariaDB via the MySql.Data-based RepoDb.Connector.MariaDb driver (RepoDb.MariaDb.BulkOperations), every row-load goes through this package's own internal MariaDbBulkCopy class — a LOAD DATA LOCAL… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MariaDb.BulkOperations, targeting the MySql.Data-based driver. This package also has… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for RepoDb.MariaDb.BulkOperations, targeting the MySql.Data-based driver. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for RepoDb.MariaDb.BulkOperations, targeting the MySql.Data-based driver. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for… BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MariaDb.BulkOperations, targeting the MySql.Data-based driver.
MariaDbConnector
MariaDbConnectorFor MariaDB via the MySqlConnector-based RepoDb.Connector.MariaDbConnector driver, the underlying implementation leverages that connector's own MariaDbBulkCopy class — the MariaDB-flavored… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MariaDbConnector.BulkOperations, targeting the MySqlConnector-based driver. This… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for RepoDb.MariaDbConnector.BulkOperations, targeting the MySqlConnector-based driver. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for RepoDb.MariaDbConnector.BulkOperations, targeting the MySqlConnector-based driver. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for… BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MariaDbConnector.BulkOperations, targeting the MySqlConnector-based driver.
MySQL
MySQLFor MySQL via the MySql.Data driver (RepoDb.MySql.BulkOperations), every row-load goes through this package's own internal MySqlBulkCopy class — a LOAD DATA LOCAL INFILE-based stand-in built on top… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MySql.BulkOperations, targeting the MySql.Data driver. This package also has a… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for RepoDb.MySql.BulkOperations, targeting the MySql.Data driver. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for RepoDb.MySql.BulkOperations, targeting the MySql.Data driver. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for… BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for RepoDb.MySql.BulkOperations, targeting the MySql.Data driver.
MySqlConnector
MySqlConnectorFor MySQL via the MySqlConnector driver, the underlying implementation is leveraging the MySqlBulkCopy class of the MySqlConnector namespace — the same kind of bulk-load primitive SqlBulkCopy is for… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for MySqlConnector. MySqlConnector also has a dedicated BulkDeleteByKey operation for deleting… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for MySqlConnector. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for MySqlConnector. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for MySqlConnector. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for MySqlConnector.
Oracle
OracleFor Oracle, the underlying implementation is leveraging the OracleBulkCopy class of the Oracle.ManagedDataAccess.Core namespace, which always performs a direct-path load. BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for Oracle. Oracle also has a dedicated BulkDeleteByKey operation for deleting by primary key. BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported only for Oracle. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for Oracle. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for Oracle. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for Oracle.
PostgreSQL
PostgreSQLThe bulk operations implementation is leveraging the existing NpgsqlBinaryImporter class of Npgsql library. A customized method named BinaryImport is introduced to enable this capability, in which… BinaryImportThis method inserts multiple rows into the database in bulk. It is supported only for PostgreSQL. BulkDeleteThis method deletes existing rows from the database in bulk. It is supported only for PostgreSQL. BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported only for PostgreSQL. BulkInsertThis method inserts multiple rows into the database in bulk. It is supported only for PostgreSQL. BulkMergeThis method merges multiple rows into the database in bulk. It does not delete rows — it updates existing rows (if present) and inserts new rows (if absent) based on the given qualifiers. It is… BulkUpdateThis method updates existing rows in the database in bulk. It is supported only for PostgreSQL.
SAP HANA
SAP HANARepoDB's standard operations (Query, Insert, Merge, Update, Delete, etc.) all work against HanaConnection once UseSapHana() has been called. BulkInsert, BulkMerge, BulkUpdate, BulkDelete and… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for SAP HANA. SAP HANA also has a dedicated BulkDeleteByKey operation for deleting by primary… BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for SAP HANA. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for SAP HANA. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for SAP HANA. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for SAP HANA.
SQL Server
SQL ServerFor SQL Server, the underlying implementation is leveraging the existing ADO.NET SqlBulkCopy class of the Microsoft.Data.SqlClient namespace. BulkDeleteThis method deletes rows from the database in bulk. It is supported for SQL Server and Oracle. BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for SQL Server, PostgreSQL and Oracle. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for SQL Server and Oracle. BulkMergeThis method merges all rows from the client application into the database in bulk. It is supported for SQL Server and Oracle. BulkUpdateThis method updates all rows from the client application in the database in bulk. It is supported for SQL Server and Oracle.
Vertica
VerticaRepoDB's standard operations (Query, Insert, Merge, Update, Delete, etc.) all work against VerticaConnection once UseVertica() has been called. BulkInsert, BulkMerge, BulkUpdate, BulkDelete and… BulkDeleteThis method deletes rows from the database in bulk, matched by the defined qualifiers. It is supported for Vertica. Vertica also has a dedicated BulkDeleteByKey operation for deleting by primary key. BulkDeleteByKeyThis method deletes rows from the database using a list of primary keys in bulk. It is supported for Vertica. BulkInsertThis method inserts all rows from the client application into the database in bulk. It is supported for Vertica. BulkMergeThis method merges all rows from the client application into the database in bulk — inserting new rows and updating existing ones based on the defined qualifiers. It is supported for Vertica. BulkUpdateThis method updates existing rows in the database in bulk, matched by the defined qualifiers. It is supported for Vertica.
Classes
Every public class RepoDB ships, grouped by the core library and each database provider.
Core
BaseDbSettingA base class for all the database setting classes. BaseRepositoryA base class that is being used to implement an entity-based repositories. BaseStatementBuilderA base class for all the statement builder classes. BulkInsertMapItemA mapping class that is being used for bulk insert operation. CacheItemA class that is used as an item for the cache object. CancellableTraceLogA class that is being used to cancel the current trace operation. ClassExpressionA helper class to extract class properties and values. ClassHandlerMapperA class that is being used to map a class handler into a class. This class is used as an alternative to ClassHandler attribute. ClassMappedNameCacheA class that is being used to retrieve the cached name of the class or data entity. ClassMapperA mapper class that is being used to map the class into its equivalent object in the database (i.e.: Table, View). This class is used as an alternative to Map attribute. ClassPropertyA container class that holds an instance of property object. It also contains all the necesarry methods that is relevant to the current property object. CommandTextCacheA class that is being used to retrieve the cached command texts within RepoDB library. ConstantA constant class that is being used by the library. ConverterA converter class that is being used to convert an object into a specific type within the library. DataEntityDataReaderA customized data reader class that is being used to handle the list of data entity objects. DataReaderThe most fastest data reader extractor in .NET. It is used to extract the content of the data reader object and map it into a class object. DbFieldA class that contains the necessary properties that defines a database field. DbFieldCacheA class that is being used to retrieve the cached database fields of the class or data entity. DbHelperMapperA mapper class for all the database helper classes. The mapping can be made based on the type of the target RDBMS data provider. DbRepositoryA base class that is being used to implement a repository object. This is very useful if you would like to develop a shared or database level repository. DbSettingMapperA mapper class for all the database setting classes. The mapping can be made based on the type of the target RDBMS data provider. DirectionalQueryFieldA class that is being used to define a query expression for the SQL statement that is bi-directional. EntityMapFluentDefinitionA class that is being used to define a data entity level mappings (i.e.: Table, Column, Primary, Identity, DB Type and Class/Property Handler). FieldA class that defines a context of field object. FieldCacheA class that is being used to retrieve the cached fields or properties of the class or data entity. FluentMapperA class that is being used to define a mapping for the target data entity in a fluent way. FunctionalQueryFieldA query field class that is being used to define a functional query expression for the SQL statement that is useful for customizations. GlobalConfigurationA class that is being used to define the globalized configurations for the library. GlobalConfigurationOptionsA class that is being used to define the globalized configurations for the application. IdentityCacheA class that is being used to retrieve the cached identity field of the class or data entity. IdentityMapperA mapper class that is being used to map a class property to be an identity property. This class is used as an alternative to Identity attribute. LeftQueryFieldA query field class that is being used to define a query expression for the SQL statement using the LEFT function. LeftTrimQueryFieldA query field class that is being used to define a query expression for the SQL statement using the LTRIM function. LengthQueryFieldA query field class that is being used to define a query expression for the SQL statement using the LENGTH function. LenQueryFieldA query field class that is being used to define a query expression for the SQL statement using the LEN function. LowerQueryFieldA query field class that is being used to define a query expression for the SQL statement using the LOWER function. MemoryCacheAn advance class that is being used to cache an object into a memory within the library. OrderFieldA class that is being used to define an ordering of the results when querying a data from the database. ParameterA class that defines a parameter of the data command object. PrimaryCacheA class that is being used to retrieve the cached primary field of the class or data entity. PrimaryMapperA mapper class that is being used to map a class property to be primary property. This class is used as an alternative to Primary attribute. PropertyCacheA class that is being used to retrieve the cached properties of the class or data entity. PropertyHandlerCacheA class that is being used to retrieve the cached property handler of the class or data entity property. PropertyHandlerMapperA class that is being used to map a property handler into a .NET CLR type or a class property. This class is used as an alternative to PropertyHandler attribute. PropertyMappedNameCacheA class that is being used to retrieve the cached name of the class or data entity property. PropertyMapperA mapper class that is being used to map the class property into its equivalent column in the database. This class is used as an alternative to Map attribute. PropertyValueA class that holds the value of class or data entity property and its values. PropertyValueAttributeCacheA class that is being used to retrieve the cached attributes of the property. PropertyValueAttributeMapperA mapper class that is being used to map the list PropertyValueAttribute objects into a class property. This class is used as an alternative to the PropertyValueAttribute attributes. QueryBuilderAn advance fluent class that is being used to construct a SQL statements all throughout the library. QueryFieldA class that is being used to define a query expression for the SQL statement. You can define the name, operation and the value of the target expression. QueryGroupA class that is being used to group a list of query expressions for the SQL statement. You can define the conjunction to be used during the multiple query expressions. QueryMultipleExtractorA class that is being used to extract the information of the multiple resultsets returned by the ExecuteQueryMultiple operation. ResultTraceLogA class that handles the result of the trace operation. RightQueryFieldA query field class that is being used to define a query expression for the SQL statement using the RIGHT function. RightTrimQueryFieldA query field class that is being used to define a query expression for the SQL statement using the RTRIM function. StatementBuilderMapperA mapper class for all the statement builder classes. The mapping can be made based on the type of the target RDBMS data provider. TraceLogA class that contains all the information of the trace. TrimQueryFieldA query field class that is being used to define a query expression for the SQL statement using the TRIM function. TypeMapCacheA class that is being used to retrieve the cached mapped database type of the class or data entity property. TypeMapFluentDefinitionA class that is being used to define a type-level mappings (i.e.: DB Type and Property Handler). TypeMapperA class that is being used to map a .NET CLR type or class property into its equivalent database type. This class is used as an alternative to TypeMap attribute. UpperQueryFieldA query field class that is being used to define a query expression for the SQL statement using the UPPER function.
ClickHouse
ClickHouseBootstrapA class that is being used to initialize the necessary settings for the ClickHouseConnection object. ClickHouseBulkDbSettingA setting class used to control mutation-wait blocking for the ClickHouse bulk operations. ClickHouseBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit ClickHouse type name, for the ClickHouse bulk operations. ClickHouseDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a ClickHouse table. ClickHouseDbSettingA setting class used for the ClickHouse data provider. ClickHouseDbTypeNameToClientTypeResolverA class used to resolve a ClickHouse database type name into its equivalent .NET CLR type. ClickHouseGlobalConfigurationA class that is being used to initialize the necessary settings for the ClickHouse data provider. ClickHouseStatementBuilderA class used to build the SQL statements for ClickHouse.
DB2
Db2BootstrapA class that is being used to initialize the necessary settings for the DB2Connection object. Db2BulkArrayBinderAn async, array-bind based alternative to DB2BulkCopy, used by the Db2 bulk operations for true asynchronous bulk inserts. Db2BulkArrayBinderColumnMappingCollectionA collection used to define the source-to-destination column mappings of a Db2BulkArrayBinder. Db2BulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit DB2Type, for the Db2 bulk operations. Db2ByteToInt16PropertyHandlerA property handler that converts a byte data entity property to/from a short for binding against a Db2 SMALLINT column. Db2ConvertFieldResolverA class used to resolve the Field name conversion for Db2. Db2DbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a Db2 table. Db2DbSettingA setting class used for the Db2 data provider. Db2DbTypeNameToClientTypeResolverA class used to resolve a Db2 database type name into its equivalent .NET CLR type. Db2GlobalConfigurationA class that is being used to initialize the necessary settings for the Db2 data provider. Db2GuidToByteArrayPropertyHandlerA property handler that converts a Guid data entity property to/from a byte array for binding against a Db2 CHAR(16) FOR BIT DATA column. Db2StatementBuilderA class used to build the SQL statements for Db2 Database 10.5 and later. DbTypeToDb2StringNameResolverA class used to resolve a DbType into its equivalent Db2 database string name. TypeToDb2TypeResolverA class used to resolve a .NET CLR Type into its equivalent DB2Type.
DuckDB
DuckDbBootstrapA class that is being used to initialize the necessary settings for the DuckDBConnection object. DuckDbConfigurationA class that is being used to initialize the necessary settings for the DuckDBConnection object. DuckDbDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a DuckDB table. DuckDbDbSettingA setting class used for the DuckDBConnection data provider. DuckDbStatementBuilderA class used to build the SQL statements for DuckDB. DuckDbTypeNameToClientTypeResolverA class used to resolve a DuckDB database type name into its equivalent .NET CLR type.
EnterpriseDB
ClientTypeToEDBDbTypeResolverA class used to resolve a .NET CLR type into its equivalent EDBType. DbTypeToEnterpriseDbStringNameResolverA class used to resolve a DbType into its equivalent EnterpriseDB database string name. EDBBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit EDBType, for the EnterpriseDB bulk operations. EDBTraceKeysA class that holds the constant values of the operation tracing keys used by the EnterpriseDB bulk operations. EnterpriseDbBootstrapA class that is being used to initialize the necessary settings for the EDBConnection object. EnterpriseDbConvertFieldResolverA class used to resolve the Field name conversion for EnterpriseDB. EnterpriseDbDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of an EnterpriseDB table. EnterpriseDbDbSettingA setting class used for the EnterpriseDb (EDBConnection) data provider. EnterpriseDbDbTypeNameToClientTypeResolverA class used to resolve an EnterpriseDB database type name into its equivalent .NET CLR type. EnterpriseDbDbTypeNameToEDBDbTypeResolverA class used to resolve an EnterpriseDB database type name into its equivalent EDBType. EnterpriseDbGlobalConfigurationA class that is being used to initialize the necessary settings for the EnterpriseDb data provider. EnterpriseDbStatementBuilderA class used to build the SQL statements for EnterpriseDB (EDB Postgres Advanced Server).
Firebird
DateTimeOffsetToFirebirdZonedDateTimeResolverA class used to resolve a DateTimeOffset into the FbZonedDateTime value that is written into a Firebird TIMESTAMP WITH TIME ZONE column. DateTimeOffsetToFirebirdZonedTimeResolverA class used to resolve a DateTimeOffset into the FbZonedTime value that is written into a Firebird TIME WITH TIME ZONE column. DbTypeNameToColumnNameResolverA class used to resolve a Firebird database type name into its equivalent base Firebird column type keyword. DbTypeToFirebirdStringNameResolverA class used to resolve a DbType into its equivalent Firebird database string name. DecimalToFirebirdDecFloatResolverA class used to resolve a decimal into the FbDecFloat value that is written into a Firebird DECFLOAT column. FirebirdBootstrapA class that is being used to initialize the necessary settings for the FbConnection object. FirebirdCommandBatcherAn FbBatchCommand-based bulk-copy class for bulk-inserting huge datasets against Firebird, with true asynchronous capability. FirebirdCommandBatcherColumnMappingCollectionA collection used to define the source-to-destination column mappings of a FirebirdCommandBatcher. FirebirdCommandBatcherMapItemA mapping class used to define a column mapping, with an optional explicit FbDbType, for the Firebird bulk operations. FirebirdConfigurationA class that is being used to initialize the necessary settings for the Firebird data provider. FirebirdConvertFieldResolverA class used to resolve the Field name conversion for Firebird. FirebirdDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a Firebird table. FirebirdDbSettingA setting class used for the Firebird data provider. FirebirdDbTypeNameToClientTypeResolverA class used to resolve a Firebird database type name into its equivalent .NET CLR type. FirebirdDecFloatToDecimalResolverA class used to resolve the value of a Firebird DECFLOAT column, as returned by the driver, into a decimal. FirebirdDecFloatToTextResolverA class used to resolve the value of a Firebird DECFLOAT column, as returned by the driver, into its text form. FirebirdStatementBuilderA class used to build the SQL statements for Firebird 3.0 and later. FirebirdTraceKeysA class that holds the constant values of the operation tracing keys used by the Firebird bulk operations. FirebirdZonedValueToDateTimeOffsetResolverA class used to resolve the value of a Firebird TIMESTAMP WITH TIME ZONE or TIME WITH TIME ZONE column, as returned by the driver, into a DateTimeOffset. TextToFirebirdDecFloatResolverA class used to resolve the text form of a DECFLOAT value into the FbDecFloat value that is written into a Firebird DECFLOAT column. TimeSpanToFirebirdTimeZoneNameResolverA class used to resolve a UTC offset into the name of a Firebird time zone that has the same offset.
MariaDB
MariaDbClasses specific to the MySql.Data-based RepoDb.MariaDb package (via RepoDb.Connector.MariaDb). These cover connection bootstrapping and configuration (MariaDbBootstrap, MariaDbGlobalConfiguration)… MariaDbBootstrapA class that is being used to initialize the necessary settings for the MariaDbConnection (MySql.Data-based) object. MariaDbDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a MySql.Data-based MariaDb table. MariaDbDbSettingA setting class used for the MySql.Data-based MariaDb data provider. MariaDbDbTypeNameToClientTypeResolverA class used to resolve a MySql.Data-based MariaDb database type name into its equivalent .NET CLR type. MariaDbDbTypeToStringNameResolverA class used to resolve a MariaDbType into its equivalent MariaDB database string name. MariaDbGlobalConfigurationA class that is being used to initialize the necessary settings for the MySql.Data-based MariaDb data provider. MariaDbStatementBuilderA class used to build the SQL statements for the MySql.Data-based MariaDb data provider. MariaDbBootstrapA class that is being used to initialize the necessary settings for the MariaDbConnection (MySqlConnector-based) object. MariaDbConnectorClasses specific to the MySqlConnector-based RepoDb.MariaDbConnector package (via RepoDb.Connector.MariaDbConnector). These cover connection bootstrapping and configuration (MariaDbBootstrap… MariaDbDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a MySqlConnector-based MariaDb table. MariaDbDbSettingA setting class used for the MySqlConnector-based MariaDb data provider. MariaDbDbTypeNameToClientTypeResolverA class used to resolve a MySqlConnector-based MariaDb database type name into its equivalent .NET CLR type. MariaDbDbTypeToStringNameResolverA class used to resolve a MariaDbType into its equivalent MariaDB database string name. MariaDbGlobalConfigurationA class that is being used to initialize the necessary settings for the MySqlConnector-based MariaDb data provider. MariaDbStatementBuilderA class used to build the SQL statements for the MySqlConnector-based MariaDb data provider.
MySQL
MySqlConnectorClasses specific to the MySqlConnector-based RepoDb.MySqlConnector package. These cover connection bootstrapping and configuration (MySqlConnectorBootstrap, MySqlConnectorConfiguration), schema… MySqlConnectorBootstrapA class that is being used to initialize the necessary settings for the MySqlConnection (MySqlConnector) object. MySqlConnectorBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit MySqlDbType, for the MySqlConnector bulk operations. MySqlConnectorConfigurationA class that is being used to initialize the necessary settings for the MySqlConnector data provider. MySqlConnectorDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a MySqlConnector table. MySqlConnectorDbSettingA setting class used for the MySqlConnector data provider. MySqlConnectorDbTypeNameToClientTypeResolverA class used to resolve a MySqlConnector database type name into its equivalent .NET CLR type. MySqlConnectorDbTypeToMySqlStringNameResolverA class used to resolve a MySqlDbType (MySqlConnector) into its equivalent MySQL database string name. MySqlConnectorStatementBuilderA class used to build the SQL statements for MySqlConnector. MySqlClasses specific to the MySql.Data-based RepoDb.MySql package. These cover connection bootstrapping and configuration (MySqlBootstrap, MySqlGlobalConfiguration), schema discovery (MySqlDbHelper), SQL… MySqlBootstrapA class that is being used to initialize the necessary settings for the MySqlConnection (MySql.Data) object. MySqlDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a MySql.Data table. MySqlDbSettingA setting class used for the MySql.Data data provider. MySqlDbTypeNameToClientTypeResolverA class used to resolve a MySql.Data database type name into its equivalent .NET CLR type. MySqlDbTypeToMySqlStringNameResolverA class used to resolve a MySqlDbType (MySql.Data) into its equivalent MySQL database string name. MySqlGlobalConfigurationA class that is being used to initialize the necessary settings for the MySql.Data data provider. MySqlStatementBuilderA class used to build the SQL statements for MySql.Data.
Oracle
DbTypeToOracleStringNameResolverA class used to resolve a DbType into its equivalent Oracle database string name. OracleBootstrapA class that is being used to initialize the necessary settings for the OracleConnection object. OracleBulkArrayBinderAn async, array-bind based alternative to OracleBulkCopy, used by the Oracle bulk operations' Async overloads. OracleBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit OracleDbType, for the Oracle bulk operations. OracleConvertFieldResolverA class used to resolve the Field name conversion for Oracle. OracleDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of an Oracle table. OracleDbSettingA setting class used for the Oracle data provider. OracleDbTypeNameToClientTypeResolverA class used to resolve an Oracle database type name into its equivalent .NET CLR type. OracleGlobalConfigurationA class that is being used to initialize the necessary settings for the Oracle data provider. OracleGuidToByteArrayPropertyHandlerA property handler that converts a Guid data entity property to/from a byte array for binding against an Oracle RAW(16) column. OracleStatementBuilderA class used to build the SQL statements for Oracle Database 12c and later. OracleTraceKeysA class that holds the constant values of the operation tracing keys used by the Oracle bulk operations. TypeToOracleDbTypeResolverA class used to resolve a .NET CLR Type into its equivalent OracleDbType.
PostgreSQL
ClientTypeToNpgsqlDbTypeResolverA class used to resolve a .NET CLR type into its equivalent NpgsqlDbType. DbTypeToPostgreSqlStringNameResolverA class used to resolve a DbType into its equivalent PostgreSql database string name. PostgreSqlBootstrapA class that is being used to initialize the necessary settings for the NpgsqlConnection object. PostgreSqlBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit NpgsqlDbType or data type name, for the PostgreSQL bulk operations. PostgreSqlConvertFieldResolverA class used to resolve the Field name conversion for PostgreSql. PostgreSqlDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a PostgreSql table. PostgreSqlDbSettingA setting class used for the PostgreSql data provider. PostgreSqlDbTypeNameToClientTypeResolverA class used to resolve a PostgreSql database type name into its equivalent .NET CLR type. PostgreSqlDbTypeNameToNpgsqlDbTypeResolverA class used to resolve a PostgreSql database type name into its equivalent NpgsqlDbType. PostgreSqlGlobalConfigurationA class that is being used to initialize the necessary settings for the PostgreSql data provider. PostgreSqlStatementBuilderA class used to build the SQL statements for PostgreSql.
SAP HANA
SapHanaBootstrapA class that is being used to initialize the necessary settings for the HanaConnection object. SapHanaBulkDbSettingA setting class used to control the write strategy of the SAP HANA bulk operations. SapHanaBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit HanaDbType, for the SAP HANA bulk operations. SapHanaCommandBatcherA HanaCommand-based row-by-row batch-insert class for SAP HANA, offering true asynchronous execution where HanaBulkCopy has none. SapHanaCommandBatcherColumnMappingCollectionA collection used to define the source-to-destination column mappings of a SapHanaCommandBatcher. SapHanaConfigurationA class that is being used to initialize the necessary settings for the SAP HANA data provider. SapHanaDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a SAP HANA table. SapHanaDbSettingA setting class used for the SAP HANA data provider. SapHanaDbTypeNameToClientTypeResolverA class used to resolve a SAP HANA database type name into its equivalent .NET CLR type. SapHanaDbTypeToStringNameResolverA class used to resolve a HanaDbType into its equivalent database string name. SapHanaStatementBuilderA class used to build the SQL statements for SAP HANA. SapHanaTraceKeysA class that holds the constant values of the operation tracing keys used by the SAP HANA bulk operations.
SQLite
DbTypeToSqLiteStringNameResolverA class used to resolve a DbType into its equivalent SQLite database string name. MdsSqLiteDbTypeNameToClientTypeResolverA class used to resolve a SQLite database type name into its equivalent .NET CLR type, for the Microsoft.Data.Sqlite driver. SdsSqLiteDbTypeNameToClientTypeResolverA class used to resolve a SQLite database type name into its equivalent .NET CLR type, for the System.Data.SQLite.Core driver. SqliteBootstrapA class that is being used to initialize the necessary settings for the SqliteConnection object. SqLiteConvertFieldResolverA class used to resolve the Field name conversion for SQLite. SqLiteDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a SQLite table. SqLiteDbSettingA setting class used for the SQLite data provider. SqliteGlobalConfigurationA class that is being used to initialize the necessary settings for the SQLite data provider. SqLiteStatementBuilderA class used to build the SQL statements for SQLite.
SQL Server
DbTypeToSqlServerStringNameResolverA class used to resolve a DbType into its equivalent SQL Server database string name. SqlServerBootstrapA class that is being used to initialize the necessary settings for the SqlConnection object. SqlServerBulkInsertMapItemA mapping class used to define a column mapping for the SQL Server bulk operations. SqlServerConvertFieldResolverA class used to resolve the Field name conversion for SQL Server. SqlServerDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a SQL Server table. SqlServerDbSettingA setting class used for the SQL Server data provider. SqlServerDbTypeNameToClientTypeResolverA class used to resolve a SQL Server database type name into its equivalent .NET CLR type. SqlServerGlobalConfigurationA class that is being used to initialize the necessary settings for the SQL Server data provider. SqlServerStatementBuilderA class used to build the SQL statements for SQL Server. This is the default statement builder used by the library. SqlServerTableHintsA class that contains all the SQL Server table optimizers.
Vertica
DbTypeNameToColumnNameResolverA class used to resolve a Vertica database type name into its equivalent base Vertica column type keyword. DbTypeToVerticaStringNameResolverA class used to resolve a DbType into its equivalent Vertica database string name. TimeToDateTimePropertyHandlerA property handler that re-bases the date component of a value read back from a Vertica TIME column. VerticaBootstrapA class that is being used to initialize the necessary settings for the VerticaConnection object. VerticaBulkInsertMapItemA mapping class used to define a column mapping, with an optional explicit VerticaType, for the Vertica bulk operations. VerticaConfigurationA class that is being used to initialize the necessary settings for the Vertica data provider. VerticaConvertFieldResolverA class used to resolve the Field name conversion for Vertica. VerticaDbHelperA helper class that is being used to retrieve the schema information (columns, primary/identity key) of a Vertica table. VerticaDbSettingA setting class used for the Vertica data provider. VerticaDbTypeNameToClientTypeResolverA class used to resolve a Vertica database type name into its equivalent .NET CLR type. VerticaStatementBuilderA class used to build the SQL statements for Vertica. VerticaTraceKeysA class that holds the constant values of the operation tracing keys used by the Vertica bulk operations.
Telemetry
DefaultTelemetryItemThe concrete telemetry data model used by RepoDb.Telemetry.Default. DefaultTelemetryOptionThe settings class used to configure RepoDb.Telemetry.Default. DefaultTelemetryPublisherRepositoryThe IPublisherRepository implementation used by RepoDb.Telemetry.Default. DefaultTelemetryTraceThe singleton ITrace implementation created and registered by UseDefaultTelemetry(). TelemetryItemA class that defines the telemetry data captured for a single operation, to be published to the insights solution. TelemetryOptionA class that defines the necessary settings to capture and publish the library's telemetry. TelemetryPublisherRepositoryThe default IPublisherRepository implementation; gzip-compresses and publishes telemetry data over HTTP. TelemetryTraceAn ITrace implementation that captures the library's operation telemetry and publishes it to the insights solution.
Attributes
Decorator attributes RepoDB ships, grouped by the core library and each database provider.
Core
ClassHandlerLearn on how to use the RepoDB ClassHandler attribute. DbTypeThis attribute sets the DbParameter.DbType property value via a class property. DirectionThis attribute sets the DbParameter.Direction property value via a class property. IdentityLearn on how to use the RepoDB Identity attribute. IsNullableThis attribute sets the DbParameter.IsNullable property value via a class property. MapLearn on how to use the RepoDB Map attribute. NameThis attribute sets the DbParameter.Name property value via a class property. PrecisionThis attribute sets the DbParameter.Precision property value via a class property. PrimaryLearn on how to use the RepoDB Primary attribute. PropertyHandlerLearn on how to use the RepoDB PropertyHandler attribute. PropertyValueAttributeThe base class for all attributes that set properties on a DbParameter object. ScaleThis attribute sets the DbParameter.Scale property value via a class property. SizeThis attribute sets the DbParameter.Size property value via a class property. TypeMapLearn on how to use the RepoDB TypeMap attribute.
ClickHouse
ClickHouseTypeThis attribute sets the ClickHouseDbParameter.ClickHouseType property value via a class property, forcing an explicit ClickHouse type name for the generated parameter. SourceColumnThis attribute sets the ClickHouseDbParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the ClickHouseDbParameter.SourceColumnNullMapping property value via a class property.
DB2
ArrayLengthThis attribute sets the DB2Parameter.ArrayLength property value via a class property. Specifies the number of elements of the Value property to use for parameter bind-in. Db2TypeThis attribute sets the DB2Parameter.DB2Type property value via a class property. Db2TypeOutputThis attribute sets the DB2Parameter.DB2TypeOutput property value via a class property. When true, an output-only parameter's value is returned as a native Db2 data type (a class or struct in the… IsDefaultThis attribute sets the DB2Parameter.IsDefault property value via a class property. Indicates whether the parameter uses the default value assigned by the data server. IsUnassignedThis attribute sets the DB2Parameter.IsUnassigned property value via a class property. Indicates whether the parameter is treated as an unassigned value by the data server. SourceColumnThis attribute sets the DB2Parameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the DB2Parameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the DB2Parameter.SourceVersion property value via a class property.
DuckDB
SourceColumnThis attribute sets the DuckDBParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the DuckDBParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the DuckDBParameter.SourceVersion property value via a class property.
EnterpriseDB
ConvertedValueThis attribute sets the EDBParameter.ConvertedValue property value via a class property. DbTypeThis attribute sets the EDBParameter.DbType property value via a class property. DirectionThis attribute sets the EDBParameter.Direction property value via a class property. EnterpriseDbTypeThis attribute sets the EDBParameter.EDBType property value via a class property. IsNullableThis attribute sets the EDBParameter.IsNullable property value via a class property. ParameterNameThis attribute sets the EDBParameter.ParameterName property value via a class property. PrecisionThis attribute sets the EDBParameter.Precision property value via a class property. ScaleThis attribute sets the EDBParameter.Scale property value via a class property. SizeThis attribute sets the EDBParameter.Size property value via a class property. SourceColumnThis attribute sets the EDBParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the EDBParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the EDBParameter.SourceVersion property value via a class property. ValueThis attribute sets the EDBParameter.Value property value via a class property.
Firebird
CharsetThis attribute sets the FbParameter.Charset property value via a class property. FbDbTypeThis attribute sets the FbParameter.FbDbType property value via a class property. SourceColumnThis attribute sets the FbParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the FbParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the FbParameter.SourceVersion property value via a class property.
MariaDB
MariaDbTypeThis attribute sets the MariaDbParameter.MariaDbType property value via a class property. SourceColumnThis attribute sets the MariaDbParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the MariaDbParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the MariaDbParameter.SourceVersion property value via a class property.
MariaDbConnector
MariaDbTypeThis attribute sets the MariaDbParameter.MariaDbType property value via a class property. SourceColumnThis attribute sets the MariaDbParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the MariaDbParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the MariaDbParameter.SourceVersion property value via a class property.
MySQL
MySqlDbTypeThis attribute sets the MySqlParameter.MySqlDbType property value via a class property. SourceColumnThis attribute sets the MySqlParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the MySqlParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the MySqlParameter.SourceVersion property value via a class property.
MySqlConnector
MySqlDbTypeThis attribute sets the MySqlParameter.MySqlDbType property value via a class property. SourceColumnThis attribute sets the MySqlParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the MySqlParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the MySqlParameter.SourceVersion property value via a class property.
Oracle
ArrayBindSizeThis attribute sets the OracleParameter.ArrayBindSize property value via a class property. Only meaningful for variable-length types (e.g. Varchar2, Clob, Blob) used in an Array Bind or PL/SQL… ArrayBindStatusThis attribute sets the OracleParameter.ArrayBindStatus property value via a class property. Only meaningful for an Array Bind or PL/SQL Associative Array Bind execution. CollectionTypeThis attribute sets the OracleParameter.CollectionType property value via a class property. Set this to OracleCollectionType.PLSQLAssociativeArray together with ArrayBindSize when binding a PL/SQL… OffsetThis attribute sets the OracleParameter.Offset property value via a class property. Specifies the offset into the Value property (or into each element of the Value property, for array binds). OracleDbTypeThis attribute sets the OracleParameter.OracleDbType property value via a class property. OracleDbTypeExThis attribute sets the OracleParameter.OracleDbTypeEx property value via a class property. Unlike OracleDbType, binding via this property causes the output value to be returned as a plain .NET type… SkipConversionToLocalTimeThis attribute sets the OracleParameter.SkipConversionToLocalTime property value via a class property. Specifies whether the value bound to this parameter should skip conversion to local time. SourceColumnThis attribute sets the OracleParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the OracleParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the OracleParameter.SourceVersion property value via a class property. StatusThis attribute sets the OracleParameter.Status property value via a class property. UdtTypeNameThis attribute sets the OracleParameter.UdtTypeName property value via a class property. Required whenever the parameter binds an Oracle user-defined type (object type or collection).
PostgreSQL
ConvertedValueThis attribute sets the NpgsqlParameter.ConvertedValue property value via a class property. DataTypeNameThis attribute sets the NpgsqlParameter.DataTypeName property value via a class property. NpgsqlDbTypeThis attribute sets the NpgsqlParameter.NpgsqlDbType property value via a class property.
SAP HANA
OffsetThis attribute sets the HanaParameter.Offset property value via a class property. Specifies the offset into the Value property, for binary/string data. SapHanaDbTypeThis attribute sets the HanaParameter.HanaDbType property value via a class property. SourceColumnThis attribute sets the HanaParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the HanaParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the HanaParameter.SourceVersion property value via a class property.
SQLite
SqliteTypeThis attribute sets the SqliteParameter.SqliteType property value via a class property. TypeNameThis attribute sets the SQLiteParameter.TypeName property value via a class property.
SQL Server
CompareInfoThis attribute sets the SqlParameter.CompareInfo property value via a class property. ForceColumnEncryptionThis attribute sets the SqlParameter.ForceColumnEncryption property value via a class property. LocaleIdThis attribute sets the SqlParameter.LocaleId property value via a class property. OffsetThis attribute sets the SqlParameter.Offset property value via a class property. SqlDbTypeThis attribute sets the SqlParameter.SqlDbType property value via a class property. TypeNameThis attribute sets the SqlParameter.TypeName property value via a class property. UdtTypeNameThis attribute sets the SqlParameter.UdtTypeName property value via a class property. XmlSchemaCollectionDatabaseThis attribute sets the SqlParameter.XmlSchemaCollectionDatabase property value via a class property. XmlSchemaCollectionNameThis attribute sets the SqlParameter.XmlSchemaCollectionName property value via a class property. XmlSchemaCollectionOwningSchemaThis attribute sets the SqlParameter.XmlSchemaCollectionOwningSchema property value via a class property.
Vertica
SourceColumnThis attribute sets the VerticaParameter.SourceColumn property value via a class property. SourceColumnNullMappingThis attribute sets the VerticaParameter.SourceColumnNullMapping property value via a class property. SourceVersionThis attribute sets the VerticaParameter.SourceVersion property value via a class property. VerticaTypeThis attribute sets the VerticaParameter.Type property value via a class property.
Interfaces
Every public interface RepoDB ships, grouped by the core library and each database provider.
Core
ICacheThis interface is used to mark a class to be a cache object. It gives you the full control on the implementations of your own cache object (i.e.: File Caching, SqLite Caching, XML Caching, Memory… IClassHandlerThis interface is used to mark a class to be a class handler object. This interface has TEntity generic types in which being used at both the Get() and Set() methods. IDbHelperThis interface is used to mark a class to be a database helper object. It is very useful if you would like optimize and override the default implementation of the library (i.e.: retrieving the list… IDbSettingThis interface is used to mark a class to be a database setting object. It allows you to control the behavior of the library on a specific RDBMS data provider based on the value you provided on the… IExpirableThis interface is used to make a class expirable in a contextual point of view. Is is used by CacheItem class. IPropertyHandlerThis interface marks a class as a property handler. It exposes TInput and TResult generic type parameters used by both the Get() and Set() methods. IResolverThis interface is used to mark a class to be a resolver object. This interface accepts upto the maximum 7 input generic types and 1 output generic type. IStatementBuilderThis interface is used to mark a class to be a statement builder object. I provides necessary methods for your to be able to override the way how the SQL statements are being constructed. ITraceThis interface is used to mark a class to be a trace object.
ClickHouse
IClickHouseBulkDbSettingThis interface extends IDbSetting with a ClickHouse bulk-operations-specific setting. It ships in RepoDb.ClickHouse.BulkOperations — not the core RepoDb.ClickHouse package — and is implemented by…
SAP HANA
ISapHanaBulkDbSettingThis interface extends IDbSetting with a SAP HANA bulk-operations-specific setting. It ships in RepoDb.SapHana.BulkOperations — not the core RepoDb.SapHana package — and is implemented by…
Telemetry
IPublisherRepositoryThis interface is used to mark a class to be a telemetry publisher. It gives you full control over how TelemetryItem objects are delivered to your insights solution (e.g. HTTP collector, message…
Enumerations
Every public enum RepoDB ships, grouped by the core library and each database provider.
Core
ConjunctionA enumeration that defines the conjunctions to be used when composing a query expression. ConnectionPersistencyA enumeration that defines the persistency of the database connection object when working with repository. ConversionTypeA enumeration that defines the type of conversion to be used when extracting a data from/to the database. KeyColumnReturnBehaviorA enumeration that defines the type of conversion to be used when extracting a data from/to the database. OperationA enumeration that defines the different operations that can be used when composing a query expression. OrderA enumeration that defines the list of ordering when querying a data from the database.
ClickHouse
ClickHouseBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. ClickHouseBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
DB2
Db2BulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. Db2BulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
EnterpriseDB
EDBBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. EDBBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging table to be created during the bulk-import operations.
Firebird
FirebirdBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. FirebirdBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
MariaDB
MariaDbBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. MariaDbBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. MariaDbBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations. MariaDbBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
MySQL
MySqlBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. MySqlBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
MySqlConnector
MySqlConnectorBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. MySqlConnectorBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
Oracle
OracleBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. OracleBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
PostgreSQL
PostgreSqlBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. PostgreSqlBulkImportMergeCommandTypeA enumeration that is being used to define the command text to use when executing the BulkMerge operation. PostgreSqlBulkImportPseudoTableTypeAn enumeration that is being used to define the type of pseudo-temporary table to be created during the bulk-import operations.
SAP HANA
SapHanaBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. SapHanaBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations. SapHanaWriteToServerExecutionAn enumeration that is being used to define the behavior of the bulk-import write when executing towards the underlying target table.
Vertica
VerticaBulkImportIdentityBehaviorAn enumeration that is being used to define the behavior of the identity property/column when an entity is being bulk-imported towards the target table. VerticaBulkImportPseudoTableTypeAn enumeration that is being used to define the type of staging (pseudo) table to be created during the bulk-import operations.
Handlers
Ready-made property handlers RepoDB ships, grouped by the core library and each database provider.
Core
ArrayToListPropertyHandlerA property handler that maps a database array column, which the driver returns as an array, into a generic list property. BitToBitArrayPropertyHandlerA property handler that maps a multi-bit database column, such as the MySQL BIT(n) type, into a BitArray property. BitToByteArrayPropertyHandlerA property handler that maps a multi-bit database column, such as the MySQL BIT(n) type, into a big-endian byte array property. ByteArrayToFloatArrayPropertyHandlerA property handler that maps a binary-encoded vector column, such as the MySQL VECTOR type, into a float array property. CommaSeparatedStringToStringArrayPropertyHandlerA property handler that maps a comma-separated string column, such as the MySQL SET type, into a string array property. BigIntegerToInt128PropertyHandlerA property handler that maps a 128-bit integer column, which drivers expose as a BigInteger, into a Int128 property. BigIntegerToNullableInt128PropertyHandlerA property handler that maps a 128-bit integer column, which drivers expose as a BigInteger, into a nullable Int128 property. BigIntegerToUInt128PropertyHandlerA property handler that maps an unsigned 128-bit integer column, which drivers expose as a BigInteger, into a UInt128 property. BigIntegerToNullableUInt128PropertyHandlerA property handler that maps an unsigned 128-bit integer column, which drivers expose as a BigInteger, into a nullable UInt128 property. JsonToEntityPropertyHandlerA property handler that maps the SQL Server json type, returned as a string, into an entity property via System.Text.Json. JsonToObjectPropertyHandlerA property handler that maps the SQL Server json type into any property type via System.Text.Json. JsonToJsonDocumentPropertyHandlerA property handler that maps a database json column, such as the MySQL JSON type, into a JsonDocument property. JsonToJsonElementPropertyHandlerA property handler that maps the SQL Server json type into a JsonElement property. JsonToJsonNodePropertyHandlerA property handler that maps the SQL Server json type into a JsonNode property. StringToEnumPropertyHandlerA property handler that maps a string-based column, such as the MySQL ENUM and SET types, into an enumeration property. StringToGuidPropertyHandlerA property handler that maps a text-based UUID column, such as the MariaDB UUID type, into a Guid property. StringToNullableGuidPropertyHandlerA property handler that maps a text-based UUID column, such as the MariaDB UUID type, into a nullable Guid property. StringToIPAddressPropertyHandlerA property handler that maps a text-based network address column, such as the MariaDB INET4 and INET6 types, into an IPAddress property. XmlToXDocumentPropertyHandlerA property handler that maps the SQL Server xml type into an XDocument property. XmlToXElementPropertyHandlerA property handler that maps the SQL Server xml type into an XElement property. XmlToXmlDocumentPropertyHandlerA property handler that maps the SQL Server xml type into an XmlDocument property.
ClickHouse
ClickHouseDecimalToDecimalPropertyHandlerA property handler that maps the ClickHouse Decimal types into a decimal property, rejecting values that do not fit. ClickHouseDecimalToNullableDecimalPropertyHandlerA property handler that maps the ClickHouse Decimal types into a nullable decimal property, rejecting values that do not fit. ClickHouseDecimalToStringPropertyHandlerA property handler that maps the ClickHouse Decimal types into a string property that keeps every digit and the scale. ClickHouseFixedStringToStringPropertyHandlerA property handler that maps the ClickHouse FixedString(N) type into a string property without the trailing NUL padding.
DB2
Db2XmlToXDocumentPropertyHandlerA property handler that maps the Db2 XML type into an XDocument property. Db2XmlToXElementPropertyHandlerA property handler that maps the Db2 XML type into an XElement property. Db2XmlToXmlDocumentPropertyHandlerA property handler that maps the Db2 XML type into an XmlDocument property. Db2DecimalFloatPropertyHandlerA property handler that maps the Db2 DECFLOAT type into a DB2DecimalFloat property that keeps the special values. Db2DecimalFloatToStringPropertyHandlerA property handler that maps the Db2 DECFLOAT type into a string property that keeps the full precision and the special values.
DuckDB
DuckDbDateOnlyToDateTimePropertyHandlerA property handler that maps a DuckDB DATE column onto a DateTime property. DuckDbDateOnlyToNullableDateTimePropertyHandlerA property handler that maps a DuckDB DATE column onto a nullable DateTime? property. DuckDbStreamToByteArrayPropertyHandlerA property handler that maps a DuckDB BLOB column onto a byte array property. DuckDbTimeOnlyToNullableTimeSpanPropertyHandlerA property handler that maps a DuckDB TIME column onto a nullable TimeSpan? property. DuckDbTimeOnlyToTimeSpanPropertyHandlerA property handler that maps a DuckDB TIME column onto a TimeSpan property.
EnterpriseDB
TsQueryToStringPropertyHandlerA property handler that maps the full-text search tsquery type into a string property. TsVectorToStringPropertyHandlerA property handler that maps the full-text search tsvector type into a string property.
Firebird
FirebirdDecFloatToDecimalPropertyHandlerA property handler that maps the Firebird DECFLOAT types into a decimal property, rejecting values that do not fit. FirebirdDecFloatToNullableDecimalPropertyHandlerA property handler that maps the Firebird DECFLOAT types into a nullable decimal property, rejecting values that do not fit. FirebirdDecFloatToStringPropertyHandlerA property handler that maps the Firebird DECFLOAT types into a string property that keeps the full precision and the special values. FirebirdZonedDateTimeToDateTimeOffsetPropertyHandlerA property handler that maps the Firebird TIMESTAMP WITH TIME ZONE type into a DateTimeOffset property. FirebirdZonedDateTimeToNullableDateTimeOffsetPropertyHandlerA property handler that maps the Firebird TIMESTAMP WITH TIME ZONE type into a nullable DateTimeOffset property. FirebirdZonedTimeToDateTimeOffsetPropertyHandlerA property handler that maps the Firebird TIME WITH TIME ZONE type into a DateTimeOffset property on 1970-01-01. FirebirdZonedTimeToNullableDateTimeOffsetPropertyHandlerA property handler that maps the Firebird TIME WITH TIME ZONE type into a nullable DateTimeOffset property on 1970-01-01.
MariaDB
GeometryToMySqlGeometryPropertyHandlerA property handler that maps the MariaDB spatial types into a MySqlGeometry property.
MariaDbConnector
GeometryToMySqlGeometryPropertyHandlerA property handler that maps the MariaDB spatial types into a MySqlGeometry property.
MySQL
MySqlObjectToGeometryPropertyHandlerA property handler that maps the MySQL spatial types into a MySqlGeometry property.
MySqlConnector
MySqlObjectToGeometryPropertyHandlerA property handler that maps the MySQL spatial types into a MySqlGeometry property.
Oracle
OracleIntervalYMPropertyHandlerA property handler that maps the Oracle INTERVAL YEAR TO MONTH type into an OracleIntervalYM property. OracleIntervalYMToTotalMonthsPropertyHandlerA property handler that maps the Oracle INTERVAL YEAR TO MONTH type into a total number of months. OracleVectorToFloatArrayPropertyHandlerA property handler that maps the Oracle VECTOR type into a float array property. OracleVectorToDoubleArrayPropertyHandlerA property handler that maps the Oracle VECTOR type into a double array property. OracleXmlTypeToXDocumentPropertyHandlerA property handler that maps the Oracle XMLType type into an XDocument property. OracleXmlTypeToXElementPropertyHandlerA property handler that maps the Oracle XMLType type into an XElement property. OracleXmlTypeToXmlDocumentPropertyHandlerA property handler that maps the Oracle XMLType type into an XmlDocument property.
PostgreSQL
PostgreSqlTsQueryToStringPropertyHandlerA property handler that maps the full-text search tsquery type into a string property. PostgreSqlTsVectorToStringPropertyHandlerA property handler that maps the full-text search tsvector type into a string property.
SAP HANA
SapHanaRealVectorToFloatArrayPropertyHandlerA property handler that maps the SAP HANA REAL_VECTOR type into a float array property.
SQL Server
SqlServerVectorToFloatArrayPropertyHandlerA property handler that maps the SQL Server vector type into a float array property.
Releases
Version-by-version release notes for the core package and every database provider.
Core
Core PackageThis page contains the latest information of the releases of RepoDB library.
ClickHouse
ClickHouseThis page contains the latest information of the releases of RepoDb.ClickHouse library. ClickHouse (Bulk)This page contains the latest information of the releases of RepoDb.ClickHouse.BulkOperations library.
DB2
Db2This page contains the latest information of the releases of RepoDb.Db2 library. Db2 (Bulk)This page contains the latest information of the releases of RepoDb.Db2.BulkOperations library.
DuckDB
DuckDBThis page contains the latest information of the releases of RepoDb.DuckDb library.
EnterpriseDB
EnterpriseDBThis page contains the latest information of the releases of RepoDb.EnterpriseDb library. EnterpriseDB (Bulk)This page contains the latest information of the releases of RepoDb.EnterpriseDb.BulkOperations library.
Firebird
FirebirdThis page contains the latest information of the releases of RepoDb.Firebird library. Firebird (Bulk)This page contains the latest information of the releases of RepoDb.Firebird.BulkOperations library.
MariaDB
MariaDBThis page contains the latest information of the releases of RepoDb.MariaDb library. MariaDb (Bulk)This page contains the latest information of the releases of RepoDb.MariaDb.BulkOperations library.
MariaDbConnector
MariaDB (MariaDbConnector)This page contains the latest information of the releases of RepoDb.MariaDbConnector library. MariaDbConnector (Bulk)This page contains the latest information of the releases of RepoDb.MariaDbConnector.BulkOperations library.
MySQL
MySQLThis page contains the latest information of the releases of RepoDb.MySql library. MySQL (Bulk)This page contains the latest information of the releases of RepoDb.MySql.BulkOperations library.
MySqlConnector
MySqlConnectorThis page contains the latest information of the releases of RepoDb.MySqlConnector library. MySqlConnector (Bulk)This page contains the latest information of the releases of RepoDb.MySqlConnector.BulkOperations library.
Oracle
OracleThis page contains the latest information of the releases of RepoDb.Oracle library. Oracle (Bulk)This page contains the latest information of the releases of RepoDb.Oracle.BulkOperations library.
PostgreSQL
PostgreSQLThis page contains the latest information of the releases of RepoDb.PostgreSql library. PostgreSQL (Bulk)This page contains the latest information of the releases of RepoDb.PostgreSql.BulkOperations library.
SAP HANA
SAP HANAThis page contains the latest information of the releases of RepoDb.SapHana library. SAP HANA (Bulk)This page contains the latest information of the releases of RepoDb.SapHana.BulkOperations library.
SQLite
SQLite (Microsoft)This page contains the latest information of the releases of RepoDb.Sqlite.Microsoft library.
SQL Server
SQL ServerThis page contains the latest information of the releases of RepoDb.SqlServer library. SQL Server BulkThis page contains the latest information of the releases of RepoDb.SqlServer.BulkOperations library.
Vertica
VerticaThis page contains the latest information of the releases of RepoDb.Vertica library. Vertica (Bulk)This page contains the latest information of the releases of RepoDb.Vertica.BulkOperations library.
Telemetry
Telemetry (Core)This page contains the latest information of the releases of RepoDb.Telemetry.Core library. Telemetry (Default)This page contains the latest information of the releases of RepoDb.Telemetry.Default library.
Quickstart Features Operations Classes Attributes Interfaces Enumerations Handlers Releases
⌕ /
GitHub
Classes
BaseDbSetting BaseRepository BaseStatementBuilder BulkInsertMapItem CacheItem CancellableTraceLog ClassExpression ClassHandlerMapper ClassMappedNameCache ClassMapper ClassProperty CommandTextCache Constant Converter DataEntityDataReader DataReader DbField DbFieldCache DbHelperMapper DbRepository DbSettingMapper DirectionalQueryField EntityMapFluentDefinition Field FieldCache FluentMapper FunctionalQueryField GlobalConfiguration GlobalConfigurationOptions IdentityCache IdentityMapper LeftQueryField LeftTrimQueryField LengthQueryField LenQueryField LowerQueryField MemoryCache OrderField Parameter PrimaryCache PrimaryMapper PropertyCache PropertyHandlerCache PropertyHandlerMapper PropertyMappedNameCache PropertyMapper PropertyValue PropertyValueAttributeCache PropertyValueAttributeMapper QueryBuilder QueryField QueryGroup QueryMultipleExtractor ResultTraceLog RightQueryField RightTrimQueryField StatementBuilderMapper TraceLog TrimQueryField TypeMapCache TypeMapFluentDefinition TypeMapper UpperQueryField
ClickHouseBootstrap ClickHouseBulkDbSetting ClickHouseBulkInsertMapItem ClickHouseDbHelper ClickHouseDbSetting ClickHouseDbTypeNameToClientTypeResolver ClickHouseGlobalConfiguration ClickHouseStatementBuilder
Db2Bootstrap Db2BulkArrayBinder Db2BulkArrayBinderColumnMappingCollection Db2BulkInsertMapItem Db2ByteToInt16PropertyHandler Db2ConvertFieldResolver Db2DbHelper Db2DbSetting Db2DbTypeNameToClientTypeResolver Db2GlobalConfiguration Db2GuidToByteArrayPropertyHandler Db2StatementBuilder DbTypeToDb2StringNameResolver TypeToDb2TypeResolver
DuckDbBootstrap DuckDbConfiguration DuckDbDbHelper DuckDbDbSetting DuckDbStatementBuilder DuckDbTypeNameToClientTypeResolver
ClientTypeToEDBDbTypeResolver DbTypeToEnterpriseDbStringNameResolver EDBBulkInsertMapItem EDBTraceKeys EnterpriseDbBootstrap EnterpriseDbConvertFieldResolver EnterpriseDbDbHelper EnterpriseDbDbSetting EnterpriseDbDbTypeNameToClientTypeResolver EnterpriseDbDbTypeNameToEDBDbTypeResolver EnterpriseDbGlobalConfiguration EnterpriseDbStatementBuilder
DateTimeOffsetToFirebirdZonedDateTimeResolver DateTimeOffsetToFirebirdZonedTimeResolver DbTypeNameToColumnNameResolver DbTypeToFirebirdStringNameResolver DecimalToFirebirdDecFloatResolver FirebirdBootstrap FirebirdCommandBatcher FirebirdCommandBatcherColumnMappingCollection FirebirdCommandBatcherMapItem FirebirdConfiguration FirebirdConvertFieldResolver FirebirdDbHelper FirebirdDbSetting FirebirdDbTypeNameToClientTypeResolver FirebirdDecFloatToDecimalResolver FirebirdDecFloatToTextResolver FirebirdStatementBuilder FirebirdTraceKeys FirebirdZonedValueToDateTimeOffsetResolver TextToFirebirdDecFloatResolver TimeSpanToFirebirdTimeZoneNameResolver
MariaDb MariaDbBootstrap MariaDbDbHelper MariaDbDbSetting MariaDbDbTypeNameToClientTypeResolver MariaDbDbTypeToStringNameResolver MariaDbGlobalConfiguration MariaDbStatementBuilder MariaDbBootstrap MariaDbConnector MariaDbDbHelper MariaDbDbSetting MariaDbDbTypeNameToClientTypeResolver MariaDbDbTypeToStringNameResolver MariaDbGlobalConfiguration MariaDbStatementBuilder
MySqlConnector MySqlConnectorBootstrap MySqlConnectorBulkInsertMapItem MySqlConnectorConfiguration MySqlConnectorDbHelper MySqlConnectorDbSetting MySqlConnectorDbTypeNameToClientTypeResolver MySqlConnectorDbTypeToMySqlStringNameResolver MySqlConnectorStatementBuilder MySql MySqlBootstrap MySqlDbHelper MySqlDbSetting MySqlDbTypeNameToClientTypeResolver MySqlDbTypeToMySqlStringNameResolver MySqlGlobalConfiguration MySqlStatementBuilder
DbTypeToOracleStringNameResolver OracleBootstrap OracleBulkArrayBinder OracleBulkInsertMapItem OracleConvertFieldResolver OracleDbHelper OracleDbSetting OracleDbTypeNameToClientTypeResolver OracleGlobalConfiguration OracleGuidToByteArrayPropertyHandler OracleStatementBuilder OracleTraceKeys TypeToOracleDbTypeResolver
ClientTypeToNpgsqlDbTypeResolver DbTypeToPostgreSqlStringNameResolver PostgreSqlBootstrap PostgreSqlBulkInsertMapItem PostgreSqlConvertFieldResolver PostgreSqlDbHelper PostgreSqlDbSetting PostgreSqlDbTypeNameToClientTypeResolver PostgreSqlDbTypeNameToNpgsqlDbTypeResolver PostgreSqlGlobalConfiguration PostgreSqlStatementBuilder
SapHanaBootstrap SapHanaBulkDbSetting SapHanaBulkInsertMapItem SapHanaCommandBatcher SapHanaCommandBatcherColumnMappingCollection SapHanaConfiguration SapHanaDbHelper SapHanaDbSetting SapHanaDbTypeNameToClientTypeResolver SapHanaDbTypeToStringNameResolver SapHanaStatementBuilder SapHanaTraceKeys
DbTypeToSqLiteStringNameResolver MdsSqLiteDbTypeNameToClientTypeResolver SdsSqLiteDbTypeNameToClientTypeResolver SqliteBootstrap SqLiteConvertFieldResolver SqLiteDbHelper SqLiteDbSetting SqliteGlobalConfiguration SqLiteStatementBuilder
DbTypeToSqlServerStringNameResolver SqlServerBootstrap SqlServerBulkInsertMapItem SqlServerConvertFieldResolver SqlServerDbHelper SqlServerDbSetting SqlServerDbTypeNameToClientTypeResolver SqlServerGlobalConfiguration SqlServerStatementBuilder SqlServerTableHints
DbTypeNameToColumnNameResolver DbTypeToVerticaStringNameResolver TimeToDateTimePropertyHandler VerticaBootstrap VerticaBulkInsertMapItem VerticaConfiguration VerticaConvertFieldResolver VerticaDbHelper VerticaDbSetting VerticaDbTypeNameToClientTypeResolver VerticaStatementBuilder VerticaTraceKeys
DefaultTelemetryItem DefaultTelemetryOption DefaultTelemetryPublisherRepository DefaultTelemetryTrace TelemetryItem TelemetryOption TelemetryPublisherRepository TelemetryTrace
Classes · 1 min read

Db2GlobalConfiguration

A class that is being used to initialize the necessary settings for the Db2 data provider.

This class exposes the UseDb2() extension method of GlobalConfiguration, which wires up all the necessary dependencies for Db2 (via Db2Bootstrap).

Usability

GlobalConfiguration
    .Setup()
    .UseDb2();

Call this once during application start-up, before opening any DB2Connection.

← Previous
Db2DbTypeNameToClientTypeResolver
Next →
Db2GuidToByteArrayPropertyHandler
On this page
Usability
↑ Back to top

Copyright © 2018-2026 Michael Camara Pendon. Licensed using the Apache License 2.0.

Blogsite Security Policy Contributing Code of Conduct Limitations Support Policy

Powered by RepoDB Blog Template & Jekyll, created by Michael Camara Pendon · Site last built September 23, 2026 at 21:19 UTC