chore(sonar): apply collection-expression syntax across all sites (IDE0028)
SonarQube Analysis / sonarqube (pull_request) Successful in 2m47s

Manual sweep of all 42 IDE0028 sites flagged by SonarQube — `dotnet format
analyzers --diagnostics IDE0028` declined to fix these (no .editorconfig
opt-in for `dotnet_style_prefer_collection_expression`), so applied by
hand. The repo already targets `<LangVersion>latest</LangVersion>` on
net8.0, so C# 12 collection expressions are available.

Pattern: `new List<T>()` / `new Dictionary<K,V>()` / `new ArrayList()` /
`new()` -> `[]` for empty; `new List<T> { ... }` -> `[...]` for literal.

24 files touched in src/{EFCore, LinqToSql, Query, Snowflake, SqlBreakdown,
SqlServer}; tests untouched (no IDE0028 sites in test code).

Build clean (35 warnings unchanged from baseline, 0 errors). All tests
remain green.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Thom Lamb
2026-05-26 17:01:30 -05:00
co-authored by Claude Opus 4.7
parent c38d122d76
commit 0f8d505616
24 changed files with 46 additions and 46 deletions
@@ -34,7 +34,7 @@ public class LinqQueryBreakdown : QueryBreakdown
/// <summary>
/// Gets or sets the list of LINQ method calls in the query chain.
/// </summary>
public List<string> MethodCallChain { get; set; } = new();
public List<string> MethodCallChain { get; set; } = [];
/// <summary>
/// Initializes a new instance of the <see cref="LinqQueryBreakdown"/> class.
@@ -260,7 +260,7 @@ public class LinqQueryBreakdown : QueryBreakdown
/// <returns>An InsertBreakdown representing the bulk insert operation.</returns>
public static Breakdowns.SqlServer.InsertBreakdown AnalyzeInsertRange<T>(IEnumerable<T> entities) where T : class
{
var entitiesList = entities?.ToList() ?? new List<T>();
var entitiesList = entities?.ToList() ?? [];
if (entitiesList.Count == 0)
{
throw new ArgumentException("Must provide at least one entity to insert.", nameof(entities));