Updating LINQPad.QueryPlanVisualizer for LINQPad6 And Entity Framework Core

LINQPad.QueryPlanVisualizer is a custom visualizer for LINQPad that shows a database query plan inside LINQPad. It also shows missing indexes for the query that you can create directly from LINQPad. Since then, a new major version, LINQPad 6, was released that targets .NET Core 3 and .NET 5 and uses Entity Framework Core (as well as LINQ-to-SQL) for running Linq queries. To support these changes, I have just released a new version of LINQPad.

EntityFramework.Exceptions 3.1.1 - Support for Entity Framework Core 3 and Improved API

In the previous article I introduced EntityFramework.Exceptions, a library which simplifies handling exceptions in Entity Framework Core but the library had one important limitation. In order to use it you had to inherit your custom DbContext from ExceptionProcessorContextBase class. This means that if you wanted to use some other base class for your DbContext you were out of luck. The latest version of the library solves this issue by

Entity Framework Exceptions

Handle database errors easily when working with Entity Framework Core. Supports SQLServer, PostgreSQL, Oracle, SQLite and MySql

Introducing EntityFramework.Exceptions

When using Entity Framework Core for data access all database exceptions are wrapped in DbUpdateException. If you need to know whether the exception was caused by a unique constraint, value being too long or value missing for a required column you need to dig into the concrete DbException subclass instance and check the error number to determine the exact cause. EntityFramework.Exceptions simplifies this by handling all the database specific details and throwing different exceptions for different cases. All you have to do is