FML.Infrastructure.Data 1.0.0
FML.Infrastructure.Data
Data access infrastructure for FML applications using Entity Framework Core.
Installation
dotnet add package FML.Infrastructure.Data --source https://nuget.freakmylife.fr/v3/index.json
Dependencies
This package depends on:
FML.Infrastructure.CoreFML.Infrastructure.Auth
Components
IUnitOfWork
Encapsulates database context and transaction management.
// In Program.cs
services.AddInfrastructureData<MyDbContext>();
// In your service
public class MyService(IUnitOfWork unitOfWork)
{
public async Task DoSomethingTransactional()
{
await using var transaction = await unitOfWork.BeginTransactionAsync();
// ... do work
await unitOfWork.CommitAsync();
await transaction.CommitAsync();
}
}
ICrudRepository
Generic CRUD repository with built-in pagination and filtering.
// Register repositories
services.AddCrudRepository<Product>();
// Use in service
public class ProductService(ICrudRepository<Product> repository)
{
public async Task<List<Product>> GetProducts(int page, int limit)
{
return await repository.PaginateAsync(page, limit);
}
public async Task CreateProduct(Product product)
{
await repository.InsertAndCommitAsync(product);
}
}
QueryableExtensions
Extension methods for applying pagination and ordering to IQueryable.
var parameters = new QueryParameters
{
Page = 1,
Limit = 20,
OrderBy = "Name",
OrderDesc = false
};
var results = await dbContext.Products
.AddQueryParameters(parameters)
.ToListAsync();
Configuration
services.AddInfrastructureData<MyDbContext>(options =>
{
options.IsTestMode = false;
options.TestUserId = null;
});
No packages depend on FML.Infrastructure.Data.
.NET 9.0
- FML.Infrastructure.Auth (>= 1.0.0)
- FML.Infrastructure.Core (>= 1.0.0)
- Microsoft.EntityFrameworkCore (>= 9.0.0)
- Microsoft.EntityFrameworkCore.Relational (>= 9.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Options (>= 9.0.0)
| Version | Downloads | Last updated |
|---|---|---|
| 1.0.0 | 2 | 02/07/2026 |