RSS.Social

Steven Giesel

follow: @[email protected]

Posts

ToDictionaryAsync retrieves the whole object from the database in Entity Framework

Divide and Conquer the Database

Quick one: Difference between collection expressions and collection initializer

Two more LINQ extensions in dotnet 10

How to not return all properties in SqlRaw

Disabling thread safety check in Entity Framework

Using Architecture Tests for CancellationTokens and sealed classes

Why Lists are not lowered to a while loop

ToListAsync is fast again in Entity Framework (kind of)

Adding test description for data-driven tests in xUnit

You can't use switch expressions in Blazor (sometimes)

.NET 10 Performance Edition

How to get to know the latest dotnet features - the nerdy way

Why is enumerating over List faster than IList?

Avoiding reflection in C# in way unsafer ways!

Writing new guards with extensions in C# 14

Clearing NuGet Caches

Does .NET Documentation get ads? Aka: Is Copilot in the docs something useful?

HttpClient improvements in .NET 10

Extensions get an update in .NET 10

A custom 404 page in Blazor Web Apps

More LinkedIn "Tips": Dragging your whole database into memory!

C# Language Mind map v14

Solving Problems you wouldn't have if you wouldn't use Entity Framework

TypeScript-Go: A 10x Faster TypeScript without .NET but in Go

System.Linq.Async is part of .NET 10 - LINQ for IAsyncEnumerable

Tailwind v4 with Blazor - It just got easier

C# 14: Null-conditional assignment

IEnumerable vs IEnumerator in C#: One is 2x Faster - LinkedIn Edition

Managed Postgres Instance: Neon

LINQ MindMap: .NET 10 Edition

Validate that your DI Container can be created in ASP.NET Core

When will .NET Framework retire?

Cache CORS Preflight Requests

Announcing Developer Academy

Equipping 3rd party types with debugging capabilities

Why is Open Source important? And is it free?

Authenticate videos and images in Angular

Some news about .NET 10: BackgroundServices and new String Comparer

LINQ might get a "left join" operator in .net 10

Having fun with ValueTuple

"Always use early returns" - LinkedIn Edition

How to assert assumptions in code that might not be true?

An awaitable Blazor Modal Dialog

Be careful with ToListAsync and ToArrayAsync in Entity Framework Core

ToArray(Async) vs ToList(Async) in Entity Framework 8

Comparing the performance between the Minimal API and classic Controllers

Git Tricks: Get the last checked out branch

Centralize your packages in .NET with NuGet

xUnit v3 and some stuff about TUnit

Fullstack Web Applications with .NET, Nx and Angular Seminar

Swagger Replacement in ASP.NET 9

Managing TaskCancellationTokens in a central service in ASP.NET

LINQ Joins on multiple columns in Entity Framework

How to test HttpClient inside API Tests

To Soft Delete or Not to Soft Delete

FormattableStringFactory - Creating dynamic FormattableString instances

async2 - The .NET Runtime Async experiment concludes

Organizing Parameters in Minimal API with the AsParametersAttribute

How many API's does .NET have?

The state machine in C# with async/await

How not to benchmark!

UUID v7 in .NET 9

Codespaces for your open-source project

ReadOnlySet<T> in .NET 9

NCronJob - June Edition

Are my EF LINQ to SQL queries safe?

Does an HttpClient await the Header and the body?

StringBuilders magic for very large strings

Cancel WhenAny - linked CancellationTokenSource

Help my memory dump always shows me some exceptions!

MemoryCache, DistributedCache and HybridCache

Generate http files from a swagger definition

NCronJob - Big Updates

.NET 9 LINQ Performance Edition

Boosting Productivity with Analyzers

Checking your solution for NuGet vulnerabilities or deprecated packages

How does a List know that you changed it while enumerating it?

Does readonly make your code faster?

AI Hype - Am I out of work in five years?

Fluent API to await multiple calls and get their respective results

Equip 3rd party types with a deconstructor

Pattern matching and the compiler can be surprising

C# 13: Allow ref and unsafe in iterators and async

NCronJob - Scheduling made easy

bUnit v2 - The Blazor unit testing library vNext

Typesafety in xUnit with TheoryData<T>

Lock statement patterns

Avoid multiple boolean parameters

LINQ MindMap: .NET 9 Edition

Garbage Collector (over)simplified

SearchValues object become better with .NET 9

Three new LINQ methods in .NET 9

A replacement for BinaryFormatter in .NET 8

An alternative to AutoMapper

Const strings are not so const after all

An asynchronous lock free ring buffer for logging

A new lock type in .NET 9

The first possible new feature of C# 13: Params collection

bUnit Generators - Generate your stubs automatically

Entity Framework - Storing complex objects as JSON

A journey about the new interceptors of .NET 8

Blazor .NET 8 - Enhanced Form Navigation

A more flexible and enhanced way of logging in .NET 8

Interactive LINQ tutorial, especially for beginners

Redux Pattern in Blazor

Yes you can create classes on the stack!

Interfaces can have private methods

Blazor with TailwindCSS

Structured Concurrency in C#

.NET 8 and Blazor United / Server-side rendering

Questions I asked as .NET interviewer

Less boilerplate code with the new primary constructor in C# 12

A new way of doing reflection with .NET 8

Building a Minimal ASP.NET Core clone

Enabling List<T> to store large amounts of elements

Turn on Nullability checks by default

The "Weak Event" Pattern in C#

Expression-bodied members in properties

Enum.TryParse unexpected behavior

Creating Your Own Fakes Instead of Using Mocking Libraries

What's going on with Moq? SponsorLink and burnt soil!

Keyed Services in the IServiceProvider in .NET 8 preview 7

The combined power of F# and C#

How to benchmark different .NET versions

Gracefully Handling Entity Framework Exceptions with EntityFramework.Exceptions

.NET Framework 4.8 to .NET 6 migration

Three tricks with Dictionary

Overload resolution in C#

Why I like and prefer xUnit

LINQ: Select.Where or Where.Select?

Missing Stack trace when eliding the await keyword

Create your own Mediator (like Mediatr)

C# 12: Collection literals

How does List work under the hood in .NET?

Span / Memory / ReadOnlySequence in C#

Time abstraction in .NET 8

New Terminal logger for .NET 8

nameof get's a bit better in C# 12

How does TryGetNonEnumeratedCount work?

6 useful extensions for IEnumerable

Some cool things you can do with ValueTuple

Becoming a Microsoft MVP

Entity Framework and ordered indexes

Controlling the log level of your application

Verifying your DI Container

Create your own Validationattribute in ASP.NET Core

Domain events and the "Unit of Work" pattern

Covariance and Contravariance in C#

.NET 8 Performance Edition

5 useful extensions for Task<T> in .NET

Source Generators and Regular Expressions

LINQ on steroids with SIMD

Creating a ToolTip Component in Blazor

C# Source Generators: How to get build information?

Leverage 'is not' Operator for Exception Filtering!

Caching in .NET with MemoryCache

Write your own AutoMapper in C#

LINQ // Skip and Take

How to write your own cron Job scheduler in ASP.NET Core (like Quartz, Hangfire, ...)

Benchmarking - A matter of perspective

Is a square a rectangle? Liskov substitution principle in action

The Humble Object Pattern

Performance (ReadOnly)List vs Immutable collection types

From Testing Pyramid to Diamond

Getting git version information in your C# code

error NETSDK1194: The "--output" option isn't supported when building a solution.

A (performance) quirk with JsonSerializer

What is a Middleware and how to use it in ASP.NET Core?

Multi-Tenancy with RavenDB and ASP.NET Core

C# Language Mind map

Repository Pattern - A controversy explained

Native DateOnly and TimeOnly support in Entity Framework 8 in SQL Server

C# Lowering

Deep nesting - Why and how to avoid

C# 12: Primary Constructors

Cohesion - An indicator for refactoring

Entity Framework 8: Raw SQL queries on unmapped types

Easy Pagination for Entity Framework in 3 steps

No, No, No - Tasks are not threads and they are not for performance!

Using GitHub as your portfolio

.NET Tips and Tricks & ValueStringBuilder

Give your strings context with StringSyntaxAttribute

C# 12: Default Parameters in Lambdas

ReadOnlySpan<char> and strings - How not to compare them

Structure and order your DI container

Array, List, Collection, Set, ReadOnlyList - what? A comprehensive and exhaustive list of collection-like types

Simple DI - Container

Delete a record without prior loading in Entity Framework

ChatGPT - Current state for .NET - and in general

Check for elevated rights in .NET 8

Abstraction vs Encapsulation

How to enumerate through a StringBuilder

New ArgumentException and ArgumentOutOfRangeException helpers in .NET 8

A new wave of analyzers in .NET 8

Frozen collections in .NET 8

"Use always a StringBuilder" - Internet myths

How to get allocations in .NET? And how big is an empty array?

Anonymous test data with AutoFixture

Design patterns explained with sketches

Mutable value types are evil! Sort of...

Marking API's as obsolete or as experimental

Infographics Compendium III - Exceptions, EF Sanitized, Operators, ...

local functions vs lambda expressions

Throwing exceptions - Why is my stack trace lost?

LiteDB - A .NET embedded NoSQL database

Cursed C# - Doing shenanigans in C#

Infographics Compendium II - ThrowHelper, null Task and more

Low-level struct improvements in C# 11

How does the key exchange in HTTPS work?

Introduction to WebApplicationFactory

Infographics Compendium I - Generators, pure functions and more

x86 vs x64 in .NET

Pattern matching is awesome

How does Pagination work?

Blazor Project Structure

Memory is complicated

ASP.NET Core - Why async await is useful

LINQ explained with sketches - the eBook

EF7 - Bulk updates and Bulk deletes

NDepend

LINQ explained with sketches

Mediator Pattern - CQRS with MediatR

Logging Source Code Generators

Git-Flow, GitHub-Flow, Gitlab-Flow and Trunk Based Development explained

Blazor Client - Loading Screen

How does git work?

Abstract class vs interface

SOLID Principles in C#

C# vNext - What could come

Central nuget store for your UNO Platform App

When does Blazor (not) render?

Wrap Event based functions into awaitable Tasks - Meet TaskCompletionSource

goto in action - The exception from the rule

What is the difference between C#, .NET, IL and JIT?

Delegate, Action, Func, Lambda expression - What the heck!?

The garbage collector in .NET - Part 2: Compacting

ObjectPool - Rent and return some instances

Blazor with an RSS Feed

How to unit test a RavenDB

The garbage collector in .NET

Blazor with CancellationToken support

Stop using Finalizers in C#

Tail-Recursion - Explained with the Fibonacci series

Why are sealed classes faster in C#? And should I seal them?

Passing by value or by reference - What is faster?

ReadOnlyCollection is not an immutable collection

Is public const bad?

Modal Dialog component with Bootstrap in Blazor

4 Different ways of creating an array

default(MyStruct) vs new MyStruct() - what is the difference?

From Zero to Production - Generate everything with a single button

struct vs readonly struct vs ref struct vs record struct

Create a low allocation and faster StringBuilder - Span in Action

Reusable loading Bar Component in Blazor

UNO Platform - Build a Todo App - Part 5

UNO Platform - Build a Todo App - Part 4

The Trie - A powerful data structure

UNO Platform - Build a Todo App - Part 3

UNO Platform - Build a Todo App - Part 2

UNO Platform - Build a Todo App - Part 1

Using SSE in C# on the example of the sum of a list

Decorator Pattern using the example of a cached repository

RequiredIf - Extend the validation in Blazor

Directory.Build.props - Centralize your builds

DebuggerTypeProxy - Displaying complex states in the debugger

Blazor Performance Tuning - Good practices and advanced use cases

Heap, Stack, Boxing and Unboxing, Performance ... let's order things!

Prerendering Blazor Apps - How does it work / tips and tricks

Enum.Equals - Performance analysis

Lazy load components with Blazor - Virtualize in Action

Generator-Function in C# - What does yield do?

Task vs ValueTask - The what's, when's and how's

Lifetime Scope in Blazor Client and Server Apps

Branch Prediction - How much does an if cost?

ILGPU - Processing Data on your GPU (CUDA / OpenCL in C#)

static abstract interfaces and generic math

A better enumeration - Type safe from start to end

git hook - prefix your commit message with your JIRA ticket

API Versioning in ASP.NET Core made easy

git - useful aliases

IEnumerable vs IQueryable - What's the difference

How to hunt down bugs with git bisect

How to rebase onto a different branch with git

Tactical Design Patterns in C# - Part 1: Creational

struct Performance

Shorts: foreach on type without IEnumerable

Task.WhenAny - How to cancel other tasks

A story about boxing / unboxing and string interpolation in C#

EF Core 6 - New Features

Tutorial Unit and E2E Testing in Blazor - Part 2 Playwright Introduction

Quickly asked: Should I use unsigned integers (uint, uint8, ...) in C#?

Async Await Pitfalls / Guidelines - .NET User Group Zurich Presentation

Tutorial Unit and E2E Testing in Blazor - Part 1

Blazor Improvements in .NET 6

Upcoming .NET User Forum Zurich / 6th July 2021

My first Post