Skip to content
Navigation menu
Search
Powered by Algolia
Search
Log in
Create account
DEV Community
Close
C# Series with GitHub Samples Series' Articles
Back to Sukhpinder Singh's Series
When SearchValues<T> Actually Pays Off
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 25
When SearchValues<T> Actually Pays Off
#
csharp
#
dotnet
#
programming
#
webdev
9
reactions
Comments
Add Comment
3 min read
One Cache Miss, Fifty Database Calls
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 25
One Cache Miss, Fifty Database Calls
#
dotnet
#
aspnetcore
#
csharp
#
webdev
12
reactions
Comments
Add Comment
4 min read
600 Filters and a 414: The New QUERY Method in .NET 10
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 26
600 Filters and a 414: The New QUERY Method in .NET 10
#
aspnetcore
#
dotnet
#
csharp
#
webdev
7
reactions
Comments
Add Comment
5 min read
Your JSON Array Was Streaming All Along
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 26
Your JSON Array Was Streaming All Along
#
dotnet
#
aspnetcore
#
csharp
#
webdev
10
reactions
Comments
3
comments
5 min read
One Task.Run Quietly Killed the BackgroundService Startup Footgun
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 26
One Task.Run Quietly Killed the BackgroundService Startup Footgun
#
dotnet
#
aspnetcore
#
csharp
#
programming
6
reactions
Comments
1
comment
4 min read
One Unbounded Channel, 188 MB of Regret
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 27
One Unbounded Channel, 188 MB of Regret
#
dotnet
#
csharp
#
programming
#
webdev
7
reactions
Comments
Add Comment
4 min read
Your Request Timeout Is a Polite Suggestion
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 27
Your Request Timeout Is a Polite Suggestion
#
aspnetcore
#
dotnet
#
csharp
#
webdev
7
reactions
Comments
Add Comment
4 min read
The WhenAny Drain Loop Can Finally Retire
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 28
The WhenAny Drain Loop Can Finally Retire
#
csharp
#
dotnet
#
programming
#
webdev
7
reactions
Comments
1
comment
4 min read
Two Includes, 2,880 Rows: EF Core's Quiet Cartesian Tax
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 28
Two Includes, 2,880 Rows: EF Core's Quiet Cartesian Tax
#
dotnet
#
csharp
#
webdev
#
programming
7
reactions
Comments
1
comment
4 min read
The 400 I Didn't Have to Write
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 29
The 400 I Didn't Have to Write
#
aspnetcore
#
dotnet
#
csharp
#
webdev
5
reactions
Comments
Add Comment
4 min read
The Freeze Fee: What FrozenDictionary Charges and When It Pays
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 29
The Freeze Fee: What FrozenDictionary Charges and When It Pays
#
csharp
#
dotnet
#
programming
#
webdev
6
reactions
Comments
1
comment
4 min read
19 Requests Through a 10-Request Limit
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 30
19 Requests Through a 10-Request Limit
#
aspnetcore
#
dotnet
#
csharp
#
webdev
6
reactions
Comments
1
comment
4 min read
The Test That Slept and the Test That Never Woke Up
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Jul 30
The Test That Slept and the Test That Never Woke Up
#
dotnet
#
csharp
#
programming
#
webdev
6
reactions
Comments
Add Comment
5 min read
My Shell Scripts Speak C# Now
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 1
My Shell Scripts Speak C# Now
#
dotnet
#
csharp
#
programming
#
webdev
6
reactions
Comments
Add Comment
4 min read
The Factory Class I Finally Deleted
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 2
The Factory Class I Finally Deleted
#
dotnet
#
csharp
#
aspnetcore
#
webdev
6
reactions
Comments
Add Comment
4 min read
I Loaded 8,956 Rows to Flip One Boolean
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 2
I Loaded 8,956 Rows to Flip One Boolean
#
dotnet
#
csharp
#
webdev
#
programming
6
reactions
Comments
1
comment
4 min read
One Outage, Four Times the Traffic
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 3
One Outage, Four Times the Traffic
#
dotnet
#
csharp
#
aspnetcore
#
webdev
9
reactions
Comments
Add Comment
4 min read
The Feature Flag That Needed a Restart
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 3
The Feature Flag That Needed a Restart
#
aspnetcore
#
dotnet
#
csharp
#
webdev
7
reactions
Comments
2
comments
4 min read
I Hashed Every Word Twice to Count It Once
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 4
I Hashed Every Word Twice to Count It Once
#
csharp
#
dotnet
#
programming
#
webdev
11
reactions
Comments
1
comment
4 min read
7.8 MB of Keys I Allocated Just to Throw Away
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 4
7.8 MB of Keys I Allocated Just to Throw Away
#
csharp
#
dotnet
#
programming
#
webdev
14
reactions
Comments
Add Comment
4 min read
Microsoft.Testing.Platform Crash-Resilient TRX: Keep Evidence When the Host Dies
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 16
Microsoft.Testing.Platform Crash-Resilient TRX: Keep Evidence When the Host Dies
#
microsoft
#
dotnet
#
programming
#
web
5
reactions
Comments
Add Comment
4 min read
ASP.NET Core 10 Authentication Metrics: Distinguish No Result from Failure
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 17
ASP.NET Core 10 Authentication Metrics: Distinguish No Result from Failure
#
dotnet
#
csharp
#
monitoring
#
testing
5
reactions
Comments
Add Comment
4 min read
xUnit 4 ParallelMode.All: Protect Shared State from Test Races
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 18
xUnit 4 ParallelMode.All: Protect Shared State from Test Races
#
dotnet
#
csharp
#
testing
#
programming
5
reactions
Comments
1
comment
4 min read
.NET 10 dotnet tool exec: Pin the Version and Feed in CI
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 18
.NET 10 dotnet tool exec: Pin the Version and Feed in CI
#
dotnet
#
devops
#
programming
#
tutorial
5
reactions
Comments
Add Comment
4 min read
MCP x-mcp-header Validation: Keep Bad Tool Schemas Out of tools/list
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 19
MCP x-mcp-header Validation: Keep Bad Tool Schemas Out of tools/list
#
ai
#
mcp
#
csharp
#
testing
6
reactions
Comments
1
comment
4 min read
.NET 10 Numeric String Sorting: Put File 10 After File 9
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 20
.NET 10 Numeric String Sorting: Put File 10 After File 9
#
dotnet
#
csharp
#
programming
#
tutorial
5
reactions
Comments
Add Comment
4 min read
MCP C# SDK Array Tool Outputs: Stop Looking for a `result` Wrapper
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 21
MCP C# SDK Array Tool Outputs: Stop Looking for a `result` Wrapper
#
mcp
#
dotnet
#
csharp
#
testing
5
reactions
Comments
Add Comment
4 min read
.NET 10 JSON Console Logging: Stop Parsing State.Message
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 22
.NET 10 JSON Console Logging: Stop Parsing State.Message
#
dotnet
#
csharp
#
debugging
#
testing
7
reactions
Comments
Add Comment
4 min read
.NET 10 NU1015: Fix PackageReference Without Version Restore Failures
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 23
.NET 10 NU1015: Fix PackageReference Without Version Restore Failures
#
dotnet
#
csharp
#
devops
#
debugging
6
reactions
Comments
Add Comment
4 min read
MCP Pagination Empty `nextCursor`: Don't Stop After Page One
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 24
MCP Pagination Empty `nextCursor`: Don't Stop After Page One
#
mcp
#
dotnet
#
csharp
#
testing
5
reactions
Comments
Add Comment
4 min read
.NET 10 NU1510 Package Pruning: Fix CI Without Breaking Legacy Targets
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 24
.NET 10 NU1510 Package Pruning: Fix CI Without Breaking Legacy Targets
#
dotnet
#
csharp
#
devops
#
debugging
5
reactions
Comments
Add Comment
4 min read
.NET 10 BufferedStream WriteByte: Flush Full Buffers Explicitly
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 25
.NET 10 BufferedStream WriteByte: Flush Full Buffers Explicitly
#
dotnet
#
csharp
#
debugging
#
testing
5
reactions
Comments
1
comment
3 min read
.NET 10 ActivitySamplingResult PropagationData: Why Recorded Turns False
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 27
.NET 10 ActivitySamplingResult PropagationData: Why Recorded Turns False
#
dotnet
#
csharp
#
testing
#
monitoring
11
reactions
Comments
2
comments
4 min read
Claude Structured Outputs Refusal Handling: Stop Parsing HTTP 200 Refusals
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 28
Claude Structured Outputs Refusal Handling: Stop Parsing HTTP 200 Refusals
#
ai
#
claude
#
dotnet
#
testing
6
reactions
Comments
Add Comment
4 min read
Claude API Workspace Verification: Catch Misrouted Requests Before Attribution
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 28
Claude API Workspace Verification: Catch Misrouted Requests Before Attribution
#
claude
#
api
#
dotnet
#
testing
5
reactions
Comments
Add Comment
4 min read
MCP C# Per-Request Client Capabilities: Read the Request, Not the Server
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 29
MCP C# Per-Request Client Capabilities: Read the Request, Not the Server
#
mcp
#
dotnet
#
csharp
#
testing
6
reactions
Comments
2
comments
4 min read
OpenAI Responses API `user` Migration: Split Safety from Prompt Caching
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 30
OpenAI Responses API `user` Migration: Split Safety from Prompt Caching
#
openai
#
dotnet
#
csharp
#
security
5
reactions
Comments
Add Comment
4 min read
MCP C# Task Polling: Stop Infinite input_required Loops
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 31
MCP C# Task Polling: Stop Infinite input_required Loops
#
mcp
#
dotnet
#
csharp
#
testing
6
reactions
Comments
3
comments
3 min read
OpenAI Usage API api_key_id: Reconcile Tokens and Costs by Key
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Aug 31
OpenAI Usage API api_key_id: Reconcile Tokens and Costs by Key
#
openai
#
dotnet
#
csharp
#
testing
12
reactions
Comments
1
comment
4 min read
.NET 10 LDAP VlvRequestControl Validation: Stop Sending Replacement Bytes
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Sep 1
.NET 10 LDAP VlvRequestControl Validation: Stop Sending Replacement Bytes
#
dotnet
#
csharp
#
testing
#
debugging
5
reactions
Comments
Add Comment
4 min read
.NET 10 InlineArray Explicit Size: Fix TypeLoadException with a Wrapper
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Sep 2
.NET 10 InlineArray Explicit Size: Fix TypeLoadException with a Wrapper
#
dotnet
#
csharp
#
testing
#
programming
5
reactions
Comments
1
comment
4 min read
OpenAI Responses API previous_response_id Instructions: Repeat Policy on Every Turn
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Sep 3
OpenAI Responses API previous_response_id Instructions: Repeat Policy on Every Turn
#
openai
#
dotnet
#
csharp
#
testing
5
reactions
Comments
Add Comment
4 min read
EF Core 10 Named Default Constraints: Preview the Migration SQL Before Deploying
Sukhpinder Singh
Sukhpinder Singh
Sukhpinder Singh
Follow
Sep 3
EF Core 10 Named Default Constraints: Preview the Migration SQL Before Deploying
#
dotnet
#
csharp
#
database
#
sqlserver
6
reactions
Comments
Add Comment
4 min read
We're a place where coders share, stay up-to-date and grow their careers.
Log in
Create account