EFxceptions.Identity 0.4.5

dotnet add package EFxceptions.Identity --version 0.4.5                
NuGet\Install-Package EFxceptions.Identity -Version 0.4.5                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EFxceptions.Identity" Version="0.4.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EFxceptions.Identity --version 0.4.5                
#r "nuget: EFxceptions.Identity, 0.4.5"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EFxceptions.Identity as a Cake Addin
#addin nuget:?package=EFxceptions.Identity&version=0.4.5

// Install EFxceptions.Identity as a Cake Tool
#tool nuget:?package=EFxceptions.Identity&version=0.4.5                

<p align="center"> <img width="25%" height="25%" src="https://github.com/hassanhabib/EFxceptions/blob/master/EFxceptions.Shared/Resources/EFxceptions.png?raw=true"> </p>

EFxceptions

preview version

We have designed and developed this library as a wrapper around the existing EntityFramework DbContext implementation to provide the following values:

<ol> <li>Meaningful Exceptions for SQL error codes.</li> <li>Simplified integrations</li> <li>Test-friendly implementation.</li> </ol>

<br>

EFxeptions.Identity

preview version

A dedicated EFxeptions port that provides an EFxceptionContext that inherits from Microsoft.AspNetCore.Identity.EntityFrameworkCore.IdentityDbContext to inherit from, to support Microsoft ASP.Core Identity using EF Core. Available in the EFxceptions.Identity package.

Installation

You can get EFxceptions Nuget package by typing:

Install-Package EFxceptions

<br>

Integration

Replace your existing DbContext class with EFxceptionsContext (or your IdentityDbContext with EFxeption.EFxceptionIdentityContext) as follows:

Before:
    public partial class StorageBroker : DbContext, IStorageBroker
    {
        public StorageBroker(DbContextOptions<StorageBroker> options)
            : base(options) => this.Database.Migrate();
    }

After:
    public partial class StorageBroker : EFxceptionsContext, IStorageBroker
    {
        public StorageBroker(DbContextOptions<StorageBroker> options)
            : base(options) => this.Database.Migrate();
    }

<br>

Supported SQL Error Codes

SQL server supports over 41,000 error codes, here's the codes that this library supports so far:

Code Meanings Exception
207 Invalid column name '%.*ls'. InvalidColumnNameException
208 Invalid object name '%.*ls'. InvalidObjectNameException
547 The %ls statement conflicted with the %ls constraint "%.*ls". The conflict occurred in database "%.*ls", table "%.*ls"%ls%.*ls%ls. ForeignKeyConstraintConflictException
2627 Violation of %ls constraint '%.*ls'. Cannot insert duplicate key in object '%.*ls'. DuplicateKeyException

<br >

This library is forever growing as we add more exceptions and codes into it, we appreciate any contributions as there are so many codes we need to cover, so please stay tuned.

<br />

If you have any suggestions, comments or questions, please feel free to contact me on: <br /> Twitter: @hassanrezkhabib <br /> LinkedIn: hassanrezkhabib <br /> E-Mail: hassanhabib@live.com <br />

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on EFxceptions.Identity:

Repository Stars
hassanhabib/OtripleS
This is an open source schooling system, dedicated to provide a better experience for schools needing a management and communication and tutoring system all in one place. This project is aiming toward directing all the software development funds and hours to families in need, the idea of the project is to allow schools to use the system as long as the software funds in the school are directed towards financially disadvantaged families and students.
Version Downloads Last updated
0.4.5 11,338 5/21/2021
0.4.4 2,722 7/11/2020
0.4.2 540 7/8/2020
0.4.1 537 7/8/2020
0.4.0 519 7/7/2020

DuplicateKeyWithUniqueIndexException for SQL code 2601