Skip to content

Add EF Core 11 query improvements community article - #26211

Merged
ahmetcelik05 merged 4 commits into
devfrom
gizem/ef11-article
Sep 28, 2026
Merged

ahmetcelik05 merged 4 commits into
devfrom
gizem/ef11-article

Conversation

@gizemfirat

Copy link
Copy Markdown
Contributor

Add a community article that tests EF Core 11 query translation improvements against a real SQL Server database, using a music "year in review" report as the sample domain.

Covers:

  • FullJoin translated to a native FULL JOIN, compared with the EF Core 10 LeftJoin/RightJoin and older GroupJoin approaches
  • GroupBy with a per-group MaxBy, verified as a single round-trip with a command-counting interceptor test
  • Multi-key GroupBy aggregation for reporting
  • Standalone MaxBy/MinBy, including empty-sequence behavior tested against SQL Server
  • Split queries no longer repeating to-one joins in collection statements

Includes captured SQL for each query, app screenshots, data model and split-query diagrams, an adoption checklist and references.

Adds a new Community Article for 2026-09-27 covering EF Core 11 query translation improvements using a music “Wrapped” demo. The post documents FullJoin, GroupBy with MaxBy/MinBy, split-query join behavior, and edge-case verification with captured SQL and interceptor-based tests, along with supporting screenshots and diagrams.
Clarify the introduction and FullJoin background in the EF Core 11 query improvements article. The update makes the release-notes comparison more precise and removes an unnecessary preview-specific reference while keeping the focus on generated SQL and query behavior.
@gizemfirat gizemfirat self-assigned this Sep 27, 2026
Copilot AI lite review requested due to automatic review settings September 27, 2026 17:42
@github-actions

Copy link
Copy Markdown
Contributor

Images automagically compressed by Calibre's image-actions ✨

Compression reduced images by 64.4%, saving 2.9 MB.

Filename Before After Improvement Visual comparison
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/year-comparison.png 966.6 KB 320.1 KB 66.9% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/genre-heatmap.png 888.8 KB 273.7 KB 69.2% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/home.png 1.0 MB 429.0 KB 58.1% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/monthly-tops-calendar.png 758.9 KB 252.6 KB 66.7% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/cover.png 410.4 KB 182.1 KB 55.6% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/groupby-maxby-single-query.png 182.0 KB 55.5 KB 69.5% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/split-query.png 121.0 KB 42.1 KB 65.2% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/data-model.png 118.3 KB 42.3 KB 64.3% View diff
docs/en/Community-Articles/2026-09-27-ef-core-11-query-improvements/fulljoin-before-after.png 66.2 KB 18.9 KB 71.5% View diff

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The article contains unresolved test, SQL-output, and reported-count inconsistencies.

Review effort: Lite
Findings: 1 Medium severity · 1 Low severity

Open (2)
What changed in this PR

Adds a community article demonstrating EF Core 11 query translation improvements with a SQL Server-backed music reporting sample.

Changes:

  • Covers joins, grouping, MaxBy/MinBy, aggregations, and split-query improvements.
  • Includes SQL output, tests, diagrams, screenshots, adoption guidance, and references.
File Description
docs/​en/​Community-Articles/​2026-09-27-ef-core-11-query-improvements/​post.md New EF Core 11 query improvements article.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.


![FullJoin: EF Core 10 approach vs EF Core 11 approach, side by side](fulljoin-before-after.png)

In the seeded dataset this returns 10 "dropped" artists, 22 "stayed loyal" and 10 "newly discovered". The UI above renders each bucket as its own single-artist carousel, backed by this one query.
Comment on lines +275 to +288
### The generated SQL

Both compile to a `TOP(1) ... ORDER BY` query with the comparison key computed as a correlated subquery. No client evaluation is involved:

```sql
DECLARE @p int = 1;
SELECT TOP(@p) [a].[Id], [a].[Country], [a].[Genre], [a].[Name]
FROM [Artists] AS [a]
ORDER BY (
SELECT COUNT(*)
FROM [Tracks] AS [t]
INNER JOIN [PlayEvents] AS [p] ON [t].[Id] = [p].[TrackId]
WHERE [a].[Id] = [t].[ArtistId]) DESC
```
Update the EF Core 11 query improvements article to reflect the final demo dataset and add concrete SQL examples for the MinByAsync/MaxByAsync query behavior. This also refreshes the article's home image to match the revised content.
@ahmetcelik05
ahmetcelik05 merged commit 129ee64 into dev Sep 28, 2026
2 of 3 checks passed
@ahmetcelik05
ahmetcelik05 deleted the gizem/ef11-article branch September 28, 2026 06:06
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.

3 participants