FatRepository 0.2.0
See the version list below for details.
dotnet add package FatRepository --version 0.2.0
NuGet\Install-Package FatRepository -Version 0.2.0
<PackageReference Include="FatRepository" Version="0.2.0" />
paket add FatRepository --version 0.2.0
#r "nuget: FatRepository, 0.2.0"
// Install FatRepository as a Cake Addin #addin nuget:?package=FatRepository&version=0.2.0 // Install FatRepository as a Cake Tool #tool nuget:?package=FatRepository&version=0.2.0
FatRepository For EFCore
Give it a star if you like the project. 👏 🌠 🌟
FatRepository is an Handful predefined methods that every efcore projects need.
Usage:
Required:
Have to configure DbContext first then register the service.
What you get:
You will get two interface to intract with.
1. IFatRepository<Entity,DbContext>();
2. IFatUnitOfWork<DbContext>();
IFatRepository
will give you some handful methods to access to operate. But If you need the <b>full control</b> over your dbset class then GetEntity()
method is there to accomodate your likings.
IFatUnitOfWork
will give you all the control related dbcontext class. It is nothing but a wrapper around the DbContext.Database
instance. You can access SaveChanges and Transaction from there.
Service Registration:
With Microsoft DI:
services.AddFatRepository();
With Factory:
var dbContext = new YourDbContext();
IFatRepository repo = FatFactoryInstaller.CreateFatRepository<Blog, YourDbContext>(dbContext);
IFatUnitOfWork unitOfWork = FatFactoryInstaller.CreateUnitOfWork<YourDbContext>(dbContext);
Now you can use this in your application service layer.
public class BlogService
{
private readony IFatRepository<Blog, YourDbContext> _repository;
private readonly IFatUnitOfWork<YourDbContext _unitOfWork;
public BlogService(IFatRepository<Blog, YourDbContext> repo, IFatUnitOfWork<YourDbContext> unitOfWork)
{
_repository = repo;
_unitOfWork = unitOfWork;
}
public void Add(Blog b)
{
_repository.InsertOne(b);
_unitOfWork.Commit();
}
}
Made with C# ❤
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.0
- Microsoft.EntityFrameworkCore (>= 6.0.15)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.