Solving Race Conditions With EF Core Optimistic Locking

How often do you think about concurrency conflicts when writing code? You write the code for a new feature, confirm that it works, and call it a day. But one week later, you find out you introduced a nasty bug because you didn't think about concurrency. The most common issue is race conditions with two competing threads executing the same function. If you don't consider this during development, you introduce the risk of leaving the system in a corrupted state. In this week's newsletter, I'll challenge you to spot the race condition in a method for reserving a booking. The business requirement is you can't have two overlapping reservations for the same dates. And then, I'll show you how to solve this race condition using EF Core optimistic concurrency. Let's dive in!

GitHub - StereoDB/StereoDB: Ultrafast and lightweight in-process memory database written in F# that supports: transactions, secondary indexes, persistence, and data size larger than RAM.

Ultrafast and lightweight in-process memory database written in F# that supports: transactions, secondary indexes, persistence, and data size larger than RAM. - GitHub - StereoDB/StereoDB: Ultrafas...

Performance Improvements in .NET 8 - .NET Blog

.NET 7 was super fast, .NET 8 is faster. Take an in-depth tour through over 500 pull requests that make that a reality.

Welcoming the generative AI era with Microsoft Azure | Azure Blog | Microsoft Azure

Learn More on how Azure AI is improving business operations and bringing forth an unprecedented level of creativity and innovation.

Closures in C# Demystified

Tutorial on “Function closures” in C# language

WPF File Dialog Improvements in .NET 8 - .NET Blog

Announing OpenFolderDialog control and other file dialog properties in WPF in .NET 8.

Reasoning Task, Async & Await in .NET

As developers, we often encounter situations where we need to perform tasks concurrently to ensure our applications run efficiently. The…

Testing C# with F#

Did you know that in modern .Net Solutions, projects using different .Net languages can happily co-exist? This means that you can use the best tool for the job such as F# for your domain logic and C# for your UI or, as we do in this blog post, test C# code with F#.

Just a moment...

Just a moment...Enable JavaScript and cookies to continue

Example Domain

Example Domain Example Domain This domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission. More information...

Visual Studio for Mac Retirement Announcement - Visual Studio Blog

Today we are announcing the retirement of the Visual Studio for Mac IDE. Visual Studio for Mac 17.6 will continue to be supported for another 12 months, until August 31st, 2024, with servicing updates for security issues and updated platforms from Apple.

Announcing the New Foundational C# Certification with freeCodeCamp - .NET Blog

The Foundational C# Certification with freeCodeCamp is now available! The certification is free, globally available, and includes a full training course.

Tim Deschryver

Let's implement a naive feature flag, refactor the code with the .NET Feature Management API, and to top things off, the Azure Feature Management Feature is thrown into the mix to tweak the feature flags dynamically without having an impact on the users.

Exploring Blazor Changes in .NET 8 - Server Side Rendering (SSR)

Blazor without Web Assembly or Socket Connections...

Mastering Unit Tests in .NET: Best Practices and Naming Conventions

Dive into the world of .NET unit tests with this comprehensive guide. Understand the qualities of effective unit tests, and explore the best naming conventions that make your test code readable and maintainable.

Sisk - An Alternative .NET HTTP Server

Sisk is an alternative HTTP server for the .NET ecosystem, separate from ASP.NET Core.

Working with the LinkedIn API with C#

The last day few days, I have been experimenting with the LinkedIn API to send my blog posts, YouTube videos, and community updates automatically to my LinkedIn profile from my open-source project JosephGuadagnoNet.Broadcasting. It’s been quite a challenge to get it to work. I ran into authentication issues, permission issues, and serialization issues. So what did I decide to do? You guessed, solve the issues and blog about it so you don’t have to.

Making Your APIs Blazingly Fast in .NET 8!

Use code ARCH15 and get 15% off the brand new Solution Architecture course on Dometrain: https://dometrain.com/course/getting-started-solution-architectureBe...

How To Debug Docker and Docker Compose Solutions with JetBrains Rider | The .NET Tools Blog

Docker has become an integral part of a developer's workflow, and docker-compose helps you build complex distributed solutions from your development to the

Introducing the new IHostedLifecycleService Interface in .NET 8 - Steve Gordon - Code with Steve

In this post, we look at some new lifecycle events introduced for hosted services in .NET 8 with the introduction of IHostedLifecycleService.

.NET Enterprise Developer Day 2023 - Hosted by Amazon Web Services

A free, one-day conference provided by AWS for .NET developers with the most relevant information to efficiently build or modernize .NET app

Best practices for OpenTelemetry in .NET

Observability and distributed tracing are the new logging kids on the block. Let ma share my insights on some of the best practices when it comes to integrating observability concepts into your .NET applications.

Reddit - Dive into anything

Reddit - Dive into anything

Announcing the Unity extension for Visual Studio Code - Visual Studio Blog

Announcing a new Visual Studio Code extension that integrates with Unity to write and debug your Unity C# games with Visual Studio Code.

Hot Vacancies

.NET Developer

American startup, .NET
This week

A developer is needed for an American startup that manages the operation and maintenance of residential complexes. This is a new project from scratch with a temporary integration of the old system (Web Forms, no code access).

.NET Backend Developer

Field Complete, .NET

Field Complete is a team of passionate, young & fun-loving professionals looking to change the uneffective way that Servicing Industry works on US markets. Field Complete is growing really fast. We are looking for a Back End Developer to build a top-level modern API, ready for high load. Strong expertise with:

Senior Xamarin Developer

DraftKings, Mobile

You will join a mobile team which is working on two very exciting projects, Sportsbook and Casino. The apps are used by users in the US, where we are working on the regulated markets. We are releasing apps every two weeks. Our apps are generating almost 75% of the company revenue and the user base is growing daily. Technical stack on the project: Xamarin.Forms, MVVM with DI, NewRelic, Azure + App Center etc. Switching to .Net MAUI in the nearest 2-3 months.

Senior .NET Engineer

DraftKings, .NET

You will be working in a large US-oriented company that puts as a priority: security, performance, and stability. The candidate will work on pushing a huge number of changes (several thousand per sec) to several thousand clients in a near real-time manner.

Middle strong .NET developer

SoftServe, .NET

Our customer is an American company that develops software for businesses to help manage their networks, systems, and information technology infrastructure. The company provides purpose-built products for IT professionals, MSPs, and DevOps pros.