The well-structured Entity in EF Core

The well-structured Entity in EF Core

A database entity represents an identifiable entry, often also things from the real world, which are to be stored and managed in the database. The purpose of database entities is to provide a structured and efficient implementation for organizing and managing information. By identifying entities, defining attributes and establishing relationships, a coherent and meaningful structure is created that allows data to be stored, retrieved and updated effectively. This facilitates data management and analysis in applications and systems.

Read Blog Post
When to use optional arguments and parameter defaults in c#

When to use optional arguments and parameter defaults in c#

In C#, optional arguments are parameters in a method that have default values specified in the method’s declaration. This means that when you call the method, you can omit values for these optional parameters, and the method will use the default values defined in its signature. Optional arguments were introduced in C# 4.0 to make it more convenient to work with methods that have a large number of parameters with sensible default values.

Read Blog Post
Re-use EF Core Expressions to avoid redundant queries

Re-use EF Core Expressions to avoid redundant queries

I often see snippets in EF Core code reviews such as the following:

1dbContext.Users.Where( user => user.Id == id );

The query filter user => user.Id == id is contained directly in the Where - often not just in one place but sometimes in dozens of places. Here I ask myself: why is this not simply outsourced to a central place? It’s so simple!

Read Blog Post
Better Code with custom Strong-Id Types

Better Code with custom Strong-Id Types

In many software architectures the problem exists that there are methods, which are specified a multiplicity of type-same parameters, whose meaning is however fundamentally different. In principle, this includes all handling of Ids or other essential values that have a logical meaning.

Read Blog Post