Handling soft deletes
Soft deletes is a handy database technique by which you never (or almost never) delete records from your database. Instead, you mark these records as deleted and when you query these records, you always filter out those marked as such. In this recipe, we will see how we can get this working in Entity Framework Core. We will leverage concepts introduced in previous chapters, such as shadow properties.
Getting ready
We will be using the NuGet Package Manager to install the Entity Framework Core 1 package, Microsoft.EntityFrameworkCore
. We will also be using a SQL Server database to store the data, so we will also need Microsoft.EntityFrameworkCore.SqlServer
.
Finally, xunit
is the package we will be using for the unit tests, and dotnet-text-xunit
adds tooling support for Visual Studio. Notice that the UnitTests
project is a .NET Core App 1.0 (netcoreapp1.0), that Microsoft.EntityFrameworkCore.Design
is configured as a build dependency and Microsoft.EntityFrameworkCore.Tools...