awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
StackExchange avatar

StackExchange/Dapper

0
View on GitHub↗
18,320 星标·3,670 分支·C#·6 次浏览www.learndapper.com↗

Dapper

Dapper is a high-performance micro-ORM and SQL object mapper for .NET. It functions as an ADO.NET extension library that adds data mapping capabilities directly to database connections, allowing SQL query results to be transformed into typed objects.

The project prioritizes execution speed and low memory overhead by using intermediate language generation to map database columns to object properties. It further optimizes performance through the use of concurrent caching for mapping functions and literal value injection to improve database execution plans.

The library covers a broad range of data access capabilities, including synchronous and asynchronous SQL command execution, stored procedure support, and multi-mapping for relational data. It includes tools for managing dynamic parameters, processing multiple result sets, and streaming large datasets row-by-row to minimize memory consumption.

Features

  • SQL Query Execution - Executes synchronous and asynchronous SQL statements, including single operations and bulk updates with parameter collections.
  • Micro-ORMs - Functions as a high-performance micro-ORM for the .NET ecosystem.
  • ADO.NET Extensions - Extends the IDbConnection interface with methods that simplify SQL command and stored procedure execution.
  • .NET Database Integration - Connects .NET applications to SQL databases to execute queries and retrieve data using typed objects.
  • Parameter Collections - Transforms anonymous objects into database parameter collections by iterating over properties at runtime.
  • Object-Relational Mapping - Provides a lightweight object-relational mapping layer for common create, read, update, and delete operations.
  • Dynamic Mapping Engines - Generates Intermediate Language code at runtime to achieve high-performance mapping between database columns and object properties.
  • Dynamic Parameter Injection - Extracts parameters from objects or constructs them dynamically to support adaptive query building.
  • Result Converters - Transforms raw database query results into typed objects or dynamic lists.
  • Object Mappers - Automates the translation of database result sets into strongly-typed C# application objects.
  • Extension Methods - Provides database mapping capabilities as extensions to the standard IDbConnection interface.
  • Concurrent Caches - Uses concurrent caches to store generated mapping functions and avoid redundant compilation of query logic.
  • Multi-Object Row Deserialization - Deserializes a single database row into several distinct objects to handle joined data and associations.
  • Memory-Optimized Data Retrieval - Fetches large datasets from a database with minimal memory overhead using row streaming and optimized mapping.
  • Result Parsing Optimizations - Prioritizes execution speed and low memory overhead using runtime IL generation for result parsing.
  • Result Streaming - Supports row-by-row processing of query results to minimize memory consumption when handling large datasets.
  • Collection-Based Filtering - Automatically parameterizes queries using collections to filter results based on multiple provided values.
  • Multi-Result Set Parsers - Supports executing a single query that returns multiple data grids and processing each set independently.
  • Row-Based Result Streaming - Reads database results one record at a time to minimize memory usage when handling large datasets.
  • Stored Procedures - Executes database stored procedures and maps the returned data sets into typed objects.
  • Multi-Object Row Splitting - Splits a single database row into multiple distinct objects based on specified column split points.
  • Object Relational Mapping - High-performance micro-ORM for mapping database results to objects.
  • Persistence Frameworks - Lightweight object mapper for .NET.

Star 历史

stackexchange/dapper 的 Star 历史图表stackexchange/dapper 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Dapper 的开源替代方案

相似的开源项目,按与 Dapper 的功能重合度排序。
  • dapperlib/dapperDapperLib 的头像

    DapperLib/Dapper

    18,331在 GitHub 上查看↗

    Dapper is a lightweight object-relational mapper for .NET that functions as a high-performance data access library. It operates by extending standard database connection interfaces, allowing developers to execute raw SQL queries while automating the mapping of database results to strongly-typed objects. The library distinguishes itself through its use of runtime code generation, which creates high-performance instructions to map database rows to object properties with minimal overhead. It provides flexible data retrieval options, supporting both memory-buffered loading for speed and row-by-ro

    C#ado-netdappersql
    在 GitHub 上查看↗18,331
  • mybatis/mybatis-3mybatis 的头像

    mybatis/mybatis-3

    20,385在 GitHub 上查看↗

    MyBatis is a Java persistence framework that functions as a database query mapper and object-relational mapping tool. It decouples SQL statements from application code, allowing developers to manage database interactions by mapping Java objects to relational database records. The framework provides a centralized approach to SQL query management, enabling the use of either XML configuration files or annotations to define persistence logic. It automates the transformation of database result sets into structured objects, which eliminates the need for manual data conversion and reduces repetitive

    Javajavamybatissql
    在 GitHub 上查看↗20,385
  • felixge/node-mysqlfelixge 的头像

    felixge/node-mysql

    18,621在 GitHub 上查看↗

    This project is a pure JavaScript database driver for Node.js that implements the native MySQL binary protocol. It serves as a comprehensive connector for managing persistent network links to MySQL servers, enabling applications to execute queries, manage transactions, and handle complex data operations without requiring external middleware. The driver distinguishes itself through its integrated support for connection pooling and distributed database routing. It maintains managed sets of reusable network sockets to optimize resource usage under high request volumes, while simultaneously provi

    JavaScript
    在 GitHub 上查看↗18,621
  • sqlalchemy/sqlalchemysqlalchemy 的头像

    sqlalchemy/sqlalchemy

    11,612在 GitHub 上查看↗

    SQLAlchemy is a comprehensive Python SQL toolkit and object-relational mapper that provides a full suite of tools for interacting with relational databases. It serves as a foundational layer for database connectivity, offering both a high-level object-oriented interface for data persistence and a programmatic SQL expression language for constructing complex, dialect-agnostic queries. The project distinguishes itself through its sophisticated unit of work persistence, which coordinates atomic transactions and tracks object state changes to minimize redundant database operations. It provides a

    Pythonpythonsqlsqlalchemy
    在 GitHub 上查看↗11,612
查看 Dapper 的所有 30 个替代方案→

常见问题解答

stackexchange/dapper 是做什么的?

Dapper is a high-performance micro-ORM and SQL object mapper for .NET. It functions as an ADO.NET extension library that adds data mapping capabilities directly to database connections, allowing SQL query results to be transformed into typed objects.

stackexchange/dapper 的主要功能有哪些?

stackexchange/dapper 的主要功能包括:SQL Query Execution, Micro-ORMs, ADO.NET Extensions, .NET Database Integration, Parameter Collections, Object-Relational Mapping, Dynamic Mapping Engines, Dynamic Parameter Injection。

stackexchange/dapper 有哪些开源替代品?

stackexchange/dapper 的开源替代品包括: dapperlib/dapper — Dapper is a lightweight object-relational mapper for .NET that functions as a high-performance data access library. It… mybatis/mybatis-3 — MyBatis is a Java persistence framework that functions as a database query mapper and object-relational mapping tool.… felixge/node-mysql — This project is a pure JavaScript database driver for Node.js that implements the native MySQL binary protocol. It… sqlalchemy/sqlalchemy — SQLAlchemy is a comprehensive Python SQL toolkit and object-relational mapper that provides a full suite of tools for… hibernate/hibernate-orm — Hibernate ORM is a Java object-relational mapper and a full implementation of the Jakarta Persistence API. It serves… go-gorm/gorm — GORM is a developer-focused object-relational mapping library for Go that provides a comprehensive data persistence…