Skip to content

GodelTech/GodelTech.Data

Repository files navigation

GodelTech.Data

Description

GodelTech.Data is a .NET library designed to facilitate access to data storage using the Unit of Work, Repository, and Entity design patterns. It provides interfaces for implementing these patterns and includes support for Entity Framework Core through the GodelTech.Data.EntityFrameworkCore library.

Overview

GodelTech.Data project has interfaces for Unit of Work and Repository pattern. Implementation of it for Entity Framework Core can be found in library GodelTech.Data.EntityFrameworkCore

Extensions

You can find Repository extensions using QueryParameters and ISpecification that allows you create requests easier.

QueryParameters.cs

public class QueryParameters<TEntity, TKey>
    where TEntity : class, IEntity<TKey>
{
    public FilterRule<TEntity, TKey> Filter { get; set; }

    public SortRule<TEntity, TKey> Sort { get; set; }

    public PageRule Page { get; set; }
}

SpecificationBase.cs

public abstract class SpecificationBase<TEntity, TKey> : CompositeSpecification<TEntity, TKey>
    where TEntity : class, IEntity<TKey>
{
    public override bool IsSatisfiedBy(TEntity candidate) => AsExpression().Compile().Invoke(candidate);

    public abstract Expression<Func<TEntity, bool>> AsExpression();
}

Build

Azure DevOps builds (master) Azure DevOps tests (master) Azure DevOps coverage (master) Sonar Quality Gate Sonar Tech Debt Sonar Violations

Artifacts

Azure DevOps builds (Artifacts)

NuGet

Azure DevOps builds (NuGet) Nuget Nuget (with prereleases) Nuget Libraries.io dependency status for specific release

License

This project is licensed under the MIT License. See the LICENSE file for more details.

About

.NET library to access data storage with Unit of Work, Repository and Entity classes

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •