A fast, type-safe .NET ORM built on Dapper that provides clean, maintainable SQL with C# 6/VB 14 language features.
Dapper.FastCrud is a fast, lightweight Object-Relational Mapper (ORM) for .NET built on top of Dapper. It provides type-safe SQL query generation using modern C# 6 features like nameof operators and formattable strings, eliminating common errors from typos or database refactorings while maintaining raw SQL performance.
.NET developers who need high-performance database access with type safety, especially those transitioning from raw Dapper or seeking a faster alternative to Entity Framework.
It offers near-Dapper performance with significantly better type safety and maintainability, using compile-time checks to prevent SQL errors without the overhead of full-featured ORMs.
fast .NET ORM for strongly typed people
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses C# 6 nameof operators and formattable strings to prevent mistyped column names, ensuring errors are caught at compile time rather than runtime, as shown in the query example with nameof(Person.FirstName).
Works with SQL Server, MySQL, PostgreSQL, SQLite, SQL Anywhere, and LocalDb, providing flexibility for applications targeting different database systems without switching ORMs.
Benchmarks show it performs competitively with Dapper and significantly faster than Entity Framework, with pre-computed CRUD queries for efficient operations, as detailed in the benchmark table.
Supports code-first via data annotations, fluent registration, database-first (SQL Server only), and semi-POCO metadata, catering to various development workflows and legacy codebases.
Allows joins and self-referenced entities with alias support for complex queries, enabling relationship handling only when needed, as demonstrated with the Include method and aliases.
Database-first mapping is only available for SQL Server, restricting its use for other databases in database-first workflows, which the README explicitly admits as a limitation.
Requires developers to write SQL-like strings using formattable strings and nameof, which can be less intuitive than LINQ for those familiar with Entity Framework or other abstracted ORMs.
Configuring mappings, relationships, and aliases involves explicit registration and boilerplate code, adding overhead compared to convention-based ORMs that infer more automatically.
Relies heavily on C# 6 features like nameof and formattable strings, which may not be available in older .NET versions, potentially locking teams into newer frameworks.
Dapper.FastCRUD is an open-source alternative to the following products: