Skip to content

Latest commit

 

History

History
90 lines (54 loc) · 4.85 KB

README.md

File metadata and controls

90 lines (54 loc) · 4.85 KB

Kinetix (pour .NET 8)

Kinetix est un ensemble de modules destiné à enrichir une application .NET de fonctionnalités transverses pour simplifier certaines opérations courantes. Ces modules sont relativement indépendants et peuvent donc être intégrés unitairement.

Ci-dessous, la liste des fonctionnalités disponibles par module :

Kinetix.Services

Divisés en deux modules :

  • Kinetix.Services NuGet Badge
  • Kinetix.Services.Annotations NuGet Badge

Fonctionnalités :

  • Enregistrement automatique des services via les annotations [RegisterContract], [RegisterImpl] et la méthode d'extension AddServices()
  • Intégration d'intercepteurs (optionnels) sur les services pour y intégrer des fonctionnalités transverses (transactions, logs...)
  • Gestion transverse de "contextes de transaction" pour rattacher de l'état à une transaction courante et implémenter des actions au commit.
  • Manager de listes de références avec cache
  • Manager de services de téléchargement de fichiers

Kinetix.Modeling NuGet Badge

  • Gestion de domaines métier (avec validation) sur des champs de classes

Kinetix.Search

Divisé en trois modules :

  • Kinetix.Search.Core NuGet Badge
  • Kinetix.Search.Models NuGet Badge
  • Kinetix.Search.Elastic NuGet Badge

Fonctionnalités :

  • API de recherche avancée à facettes
  • Gestion de l'alimentation (transactionnelle) de l'index de recherche (implémentée avec Kinetix.Services)
  • Implémentation de l'API avec ElasticSearch 7

Kinetix.Monitoring

Divisé en deux modules :

  • Kinetix.Monitoring.Core NuGet Badge
  • Kinetix.Monitoring.Insights NuGet Badge

Fonctionnalités :

  • Gestion de logs de services (implémentés comme intercepteur pour Kinetix.Services)
  • Publication des logs dans Azure ApplicationInsights

Kinetix.Reporting

Divisé en trois modules :

  • Kinetix.Reporting.Annotations NuGet Badge
  • Kinetix.Reporting.Core NuGet Badge
  • Kinetix.Reporting.Web NuGet Badge

Fonctionnalités :

  • Génération d'exports Excels à partir de modèles Kinetix (annotés avec Kinetix.Modeling et qui utilisent des listes de référence de Kinetix.Services).

Kinetix.User NuGet Badge

  • Abstraction pour accéder à l'utilisateur connecté (pour ne pas toujours devoir utilisé celui de HttpContext.User)

Kinetix.Web NuGet Badge

  • Divers filtres MVC génériques
  • Préconfiguration de la sérialisation JSON

Kinetix.EFCore NuGet Badge

  • Intégration d'EF Core dans le système de transaction de Kinetix.Services

Kinetix.DataAccess.Sql

Divisé en trois modules :

  • Kinetix.DataAccess.Sql NuGet Badge
  • Kinetix.DataAccess.Sql.SqlServer NuGet Badge
  • Kinetix.DataAccess.Sql.Postgres NuGet Badge

Il s'agit d'un ORM "legacy" (utilisez plutôt EF Core et/ou Dapper), avec une implémentation pour SQL Server et PostgreSQL.

Fonctionnalités :

  • Requêtes SQL dynamiques (via une syntaxe spéciale)
  • "Broker" pour gérer du CRUD simple sur des modèles persistés.