linq2db is a type-safe object-relational mapper that translates LINQ expressions into optimized SQL queries for multiple database providers. It functions as a database mapper that links classes to tables and includes a SQL query builder and a command-line schema tool for generating data classes from existing databases.
The project provides high-performance bulk data processing for inserting and loading large volumes of records via batch or binary copy methods. It also supports advanced SQL operations, including window functions, common table expressions for recursive hierarchical querying, and dataset merging.
The library covers a broad range of data manipulation and query execution capabilities, including optimistic locking, query result pagination, and many-to-many navigation translation. It also includes systems for connection lifecycle management, transaction atomicity, and database operation interception.