Skip to content

Add lightweight EF Core hot-path sample - #22

Merged
balajibashyam merged 3 commits into
mainfrom
feature/ef-core-hot-path-sample
Aug 14, 2026
Merged

Add lightweight EF Core hot-path sample#22
balajibashyam merged 3 commits into
mainfrom
feature/ef-core-hot-path-sample

Conversation

@balajibashyam

Copy link
Copy Markdown
Contributor

Summary

Adds a minimal .NET 10 companion sample for the EF Core Advanced Modeling & Performance: Owned Types, Converters, JSON/Temporal Tables, Compiled Queries tutorial.

What's included

  • New sample: ef-core/advanced-modeling-performance/ — 12 files

    • DTO projection with AsNoTracking
    • EF.CompileAsyncQuery for stable SKU lookups
    • Named EF Core 10 soft-delete query filter (SoftDeleteFilter)
    • ExecuteUpdateAsync for set-based stock restocking
    • ExecuteDeleteAsync for soft-delete purge
    • Stale tracked-entity proof after ExecuteUpdate
    • 8 deterministic xUnit v3 tests
    • SQLite in-memory isolation (no server, no Docker)
  • Root README: New sample row in the table + ef-core/ tree entry

  • GitHub Actions: New test-ef-core-hot-path job; path filters updated for both push and pull_request

Deliberately omitted (stays in the full tutorial)

SQL Server, PostgreSQL, temporal tables, JSON columns, owned/complex types, value converters, encryption, concurrency tokens, migrations, Testcontainers, split queries, logging/interceptors, benchmarking

Versions

  • .NET SDK: 10.0.302
  • Microsoft.EntityFrameworkCore.Sqlite: 10.0.11

Validation

  • dotnet restore — passed
  • dotnet build --configuration Release — passed (0 errors, 0 warnings)
  • dotnet test --configuration Release — passed (8/8)
  • Exact deterministic console output verified
  • Security scan — clean
  • Package baseline — 1 direct package
  • No SQLite database file generated

@balajibashyam
balajibashyam merged commit b63f221 into main Aug 14, 2026
24 checks passed
@balajibashyam
balajibashyam deleted the feature/ef-core-hot-path-sample branch August 14, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant