Data Access
EF Core in depth (fundamentals through perf, concurrency, migrations, and 9/10 changes), Dapper and raw SQL, connection pooling and isolation, SQL Server internals an app dev must know, and NoSQL + event-sourced stores.
The sidebar under this section is grouped into Data Fundamentals (database normalization, connection pooling, SQL Server internals — primer material), EF Core (six topics covering everything from DbContext lifetime through 9/10 changes), and Beyond EF Core (Dapper for raw SQL and the NoSQL / event-sourced stores story).
Topics (canonical order)
-
DbContextlifetime, change tracking,DbSet, model building basics -
EF Core — Querying & Projections
IncludevsSelect,AsNoTracking, split queries, IQueryable composition -
N+1, compiled queries, identity resolution, indexes,
SaveChangesinterceptors -
Add/remove migrations, idempotent SQL scripts, deployment strategies, blue/green rules
-
EF Core — Concurrency & Transactions
Optimistic concurrency, row versions,
TransactionScope, distributed-tx warnings -
Parameterized collections, complex types, primitive collections, vector search (EF 10)
-
When to drop ORM, Dapper basics, mapping, perf comparison
-
Connection Pooling & Isolation
ADO.NET connection pool, isolation levels, deadlock vs lock escalation
-
:material-microsoft-sql-server:{ .lg .middle } SQL Server Internals for App Devs
Query plans, indexing strategy, statistics, when to drop to ADO.NET
-
Cosmos DB SDK (partition keys, RUs), MongoDB, Marten, EventStoreDB
-
Database Normalization & Denormalization
Normal forms (1NF–BCNF), denormalization for read paths, materialized views, OLTP vs reporting trade-offs
Why this order
EF Core dominates real-world .NET data access, so it leads. Within EF Core: fundamentals → querying → perf → migrations → concurrency → 9/10 deltas mirrors the order an engineer hits real problems. Dapper / raw SQL / pool & isolation come next because every senior eventually drops below EF for hot paths. SQL Server internals follows so the engineer can read query plans intelligently. NoSQL + event stores closes the section as the alternative to relational.
Cross-references
- EF Core perf cross-links into Performance and Observability for diagnostics.
- Concurrency & transactions feed Outbox & Inbox Patterns (the outbox pattern is a transactional DB write).
- Event stores link to DDD Tactical Patterns and Case: Event-Driven Order Pipeline.