Checking out EF Core inheritance options

Recently there was a need to use a hierarchy in a domain model, and there was a question about which of the available approaches to use - table per hierarchy (TPH), table per type (TPT) or table per concrete type (TPC). This very brief post is just a quick look at some benchmarks I created on the subject.

May 8, 2023 · 10 min · 1931 words · João Antunes

Event-driven integration #4 - Outbox publisher (feat. IHostedService & Channels) [ASPF02O|E043]

In this episode, we’ll implement the outbox publisher, or better yet, two versions of it, one better suited for lower latency and another for reliability. As we continue our event-driven path, this will be a good opportunity to introduce a couple of interesting .NET Core features: IHostedService (and BackgroundService) and System.Threading.Channels.

May 7, 2020 · 21 min · 4397 words · João Antunes

Event-driven integration #3 - Storing events in the outbox table [ASPF02O|E042]

On the footsteps of the last episode, in this one we store the inferred events in the outbox table, doing so transactionally, so we have guarantees that any change will eventually result in a published event.

April 28, 2020 · 10 min · 1965 words · João Antunes

Event-driven integration #2 - Inferring events from EF Core changes [ASPF02O|E041]

In this first step implementing event-driven integration between services, we’ll hook-up into EF Core’s infrastructure, namely when saving changes, to infer if any event should be raised based on the information provided by the change tracker.

April 20, 2020 · 8 min · 1547 words · João Antunes

[Redirect Magazine] #5 - Repository pattern diverging opinion, .NET and Go concurrency, JS Event Loop and Zones

Some more reading/watching material. A bit more Go this week, as I would love to use it to build something but haven’t got around to do it - my attention span in pet projects is terrible, I start one thing then get another idea and forget the previous :) Articles “Is the repository pattern useful with Entity Framework Core?” An alternative point of view on the much used repository pattern. “Go vs C#, part 1: goroutines vs async-await” An interesting read, not really for the performance tests, but mostly because of the pretty significant differences in working with async code between C# and Go....

April 8, 2018 · 1 min · 196 words · João Antunes

[Redirect Magazine] #3 - DDD with EF Core, ASP.NET Core, JS and .NET perf and some logging bits

Articles “Creating Domain-Driven Design entity classes with Entity Framework Core” Nice approach to implement domain driven design entity classes using EF Core. Some prior ideas on DDD might help in better understanding the article, but at very least it might pique your interest in learning more about it. “Exploring the Microsoft.AspNetCore.App shared framework in ASP.NET Core 2.1 (preview 1)” Overview of the way an ASP.NET Core application dependencies are handled, and the changes introduced from 2....

March 25, 2018 · 1 min · 164 words · João Antunes