EF Core in Practice
ORMs can be tricky. Getting started using them is the easy part, but when your applications grow, they feel like they get out of control and can become a liability to your project. They get all over the place, and sometimes feel like they are working against you. Luckily, with better understanding, there are a patterns and practices that can help.
For the .NET ecosystem, Entity Framework is the prominent ORM. If you are a .NET developer, the chances you will run into its latest incarnation, EF Core, are pretty high. Since its first version in 2016, EF Core has evolved quite a bit, and it may be tricky to figure out which features are useful, and which ones are rather niche.
In this workshop, we will aim at some common usage scenarios for EF Core. We will dive in from the beginning, but we’ll move past basic scenarios really quickly. We will also cover some architectural patterns and performance best practices. By the end of the workshop, you should feel comfortable applying EF Core in your own applications, both simple and complex.
Covered Topics
During this workshop, we will cover the following topics:
- Getting started with EF Core
- Mapping: from basics to advanced
- Migrations: keeping your schema in sync
- The repository pattern: benefits and drawbacks
- Unit & integration testing with EF Core
- Performance tuning with AF Core
- Multi-tenant scenarios
- Dealing with concurrency
- Architecture: How to fit EF Core into Clean Architecture
Target audience
- To attend this workshop, you should be a developer with:
- Working knowledge of the C# programming language
- A basic knowledge of how to use a SQL Server database from code
- EF Core knowledge isn’t required, but because we will skip over the basics REALLY quickly, so if you’ve never used any ORM before, it helps to familiarize yourself with the concept.
You will spend a significant part on coding during this workshop. I will present concepts for the whole class, which you will then apply in code on your own, or as a group. This workshop will be very hands-on. If you prefer watching slide decks for most of the day, this workshop might not be for you.
Laptop setup
- Your .NET IDE of choice (Visual Studio or Rider)
- .NET 8 SDK
- A working SQL server instance (LocalDB will do just fine)
- A working internet connection
Doubting if this workshop is for you?
Hannes is a developer, a coach and a father of 3.
In .NET development, he has always had a passion for performance, databases, distributed systems and large scale applications. But most of all, he likes playing devil’s advocate in technical discussions by drawing the ‘it depends’ card.
As a coach, he is enthousiastic about knowledge sharing, personal growth and building careers. All this while keeping in mind that the pace needs to be sustainable.
In his free time, when he’s not building LEGO® castles with his kids, he likes to spend time building guitars, playing chess or poker, tasting whisky and doing all round geeky stuff.
You can occasionally find him on an afterparty stage at PubConf or with Dylan Beattie & the Linebreakers.