In the previous post, I presented the project and discussed Domain-driven Design. Now, it’s time to start checking some implementation. Part 1 - Project’s overview and Domain-driven Design ...
Ecommerce DDD - Hands-on Domain-driven Design and Event Sourcing - 1/6
Part 1 - Project’s overview and Domain-driven Design Part 2 - Strategic and Tactical Design Part 3 - Domain events and Event Sourcing Part 4 - Implementing Event Sourcing with MartenDB ...
Visual Studio - .editorconfig and file-scoped namespaces
.NET 6 introduces with C#10 a new way for declaring namespaces called file-scoped namespaces. It means you can now declare a namespace per file with a one-line statement rather than nesting your co...
Pokégraph - Evolving querying with GraphQL - 2/3
In the previous post, I introduced the project and my take on modeling it based on domain-driven design approach, more specifically covering the Pokegraph.Domain project and its components. Now ...
Pokégraph - Evolving querying with GraphQL - 1/3
Here we go again with another series. Pokégraph is a small project where I built a catalog of pocket monsters (aka Pokémon) using domain-driven design principles, querying and changing data with...
Linq - TryGetNonEnumeratedCount
.NET 6 introduces the new TryGetNonEnumeratedCount() extension method on System.Linq namespace to determine the number of elements in a sequence without forcing an enumeration. bool TryGetNonEnume...
Linq - Three-way Zip
.NET 6 introduces an overload allowing a third argument for the Zip() extension method on System.Linq namespace. formerly, only 2 Enumerables were allowed. In summary, it will produce a sequence ...
C# 10 - Record Class vs Record Struct
Before we start, it is essential to know that .NET categorizes objects as value types and reference types. The memory is managed in a way that value-type instances are stored statically with their ...
NDepend - My first impressions
Over the years, I’ve used several development tools. Consequently, I saw how drastically they evolved from simple code editors to very smart and extensible IDEs. The first one I used from Microso...
Minimal APIs
.NET 6 introduces a more straightforward way to create APIs that can be very handy to power up prototypes or small projects you don’t want to deal with all the boilerplate you were required to writ...