Generated by GPT-5-mini| Dapper (software) | |
|---|---|
| Name | Dapper |
| Developer | |
| Released | 2009 |
| Programming language | C# |
| Operating system | Windows, Linux |
| License | Apache License 2.0 |
Dapper (software) is a lightweight object–relational mapping library created to provide high-performance data access for .NET applications. Originally developed within Google engineering contexts and popularized by .NET communities, it emphasizes minimal abstraction, direct SQL mapping, and micro‑ORM principles. The library influenced patterns in enterprise projects, cloud services, and web frameworks while coexisting with larger ORMs in ecosystems shaped by companies like Microsoft, Amazon, Oracle Corporation, and projects such as Entity Framework and NHibernate.
Dapper was introduced to address tension between raw ADO.NET usage and full-featured solutions like Entity Framework and NHibernate in projects that involve integrations with ASP.NET, Windows Communication Foundation, Azure services, and Amazon Web Services. It is implemented in C# and commonly used with runtimes maintained by Microsoft and community efforts around Mono and .NET Core. The project fits into architectures deployed on infrastructure offerings from Google Cloud Platform, Amazon EC2, and private data centers managed by organizations such as Red Hat and VMware.
The core design of Dapper centers on thin layering over ADO.NET to provide method-based mapping between SQL query results and .NET objects used in applications like ASP.NET Core, services built with gRPC, and backend components integrated with Kubernetes clusters. It employs techniques such as IL generation and expression trees similar to patterns used in libraries maintained by teams at Microsoft Research and open-source projects hosted on platforms like GitHub. The architecture favors direct control over SQL statements, compatibility with database engines from Oracle Corporation, PostgreSQL Global Development Group, MySQL AB, and Microsoft SQL Server, and integration with connection pools influenced by practices at Netflix and Facebook.
Dapper exposes a concise API for executing queries, mapping multi‑result sets, and performing parameter binding, aligning with deployment scenarios in Docker containers, IIS, and NGINX reverse proxies. It supports typed mapping of result sets to POCOs used in applications built by teams at Spotify, Airbnb, and Uber Technologies, and enables multi‑mapping for relational joins similar to approaches used in services by PayPal and Stripe. Additional capabilities include support for transactions compatible with patterns used in RabbitMQ workflows, command batching for high‑throughput systems employed by LinkedIn and Twitter, and extensibility hooks leveraged by contributors from organizations like JetBrains.
Benchmarks for Dapper often compare favorably to full ORMs in scenarios tested by independent researchers in academia and industry, including studies referencing runtime optimizations pursued at Microsoft Research and performance engineering teams at Google. Microbenchmarks run on hardware from vendors such as Intel and AMD and cloud instances provided by Amazon Web Services and Google Cloud Platform typically show Dapper achieving lower allocation and faster throughput than frameworks like Entity Framework Core and NHibernate while trading off features found in those projects. Real-world performance anecdotes appear in blog posts and conference talks at events organized by Microsoft Build, NDC Conferences, and dotNETConf.
Dapper is used across web applications built with ASP.NET MVC, backend APIs using ASP.NET Core, and background processing systems integrated with Hangfire and Quartz.NET. Companies in fintech, advertising, and e‑commerce such as Stripe, Shopify, eBay, and Square have engineering teams that favor lightweight data access patterns similar to those offered by Dapper when building microservices orchestrated by Kubernetes and deployed to platforms like Heroku and Azure App Service. It is also used in analytics pipelines that ingest data into systems by Snowflake Computing and Apache Kafka ecosystems, where direct SQL control and predictable allocations are critical.
The project has seen contributions from engineers across the .NET Foundation, individual maintainers, and corporate developers who collaborate on open-source hosting platforms like GitHub and discuss issues at conferences such as Microsoft Ignite and Meetup groups focused on .NET User Group chapters. Maintenance follows community norms influenced by governance models at Apache Software Foundation projects and contribution workflows similar to those used by Linux Foundation initiatives. The ecosystem includes third‑party extensions, adapters for ORMs and database drivers by vendors like Npgsql Development Team and MySQL AB, and community documentation produced by authors who publish at venues like Pluralsight and InfoQ.
Category:.NET libraries