60 Commits

Author SHA1 Message Date
Developer 02
55eb250d7e Deprecate controllers/services; simplify generics
Added `[Obsolete("Use MediatR")]` attributes to various controller and service classes to indicate deprecation in favor of MediatR. Simplified generic type constraints in `CRUDControllerBase` and related files by removing `IUnique<TId>`. Improved structure and documentation in `CSPMiddleware.cs`. Introduced new extension methods in `EntityExtensions.cs` for safer retrieval of 'Id' properties. Removed `IUnique.cs` interface and updated project dependencies in `DigitalData.Core.Application.csproj` for caching. Overall, these changes enhance code maintainability and clarity.
2025-05-16 14:54:31 +02:00
Developer 02
3a1aeb7ac3 Refactor namespaces and enhance application structure
This commit reorganizes namespaces from `DigitalData.Core.Abstractions` and `DigitalData.Core.DTO` to `DigitalData.Core.Application.Interfaces` and `DigitalData.Core.Application.DTO`, improving maintainability and clarity.

Updated using directives across multiple files to reflect the new structure, ensuring functionality remains intact.

Project references in `DigitalData.Core.API.csproj` have been consolidated to include the new Application project.

Introduced new classes and interfaces such as `BaseDTO`, `CookieConsentSettings`, `DataResult`, `Notice`, and `Result` to enhance data transfer and service result handling.

Updated `IRepository`, `ICRUDRepository`, and `IEntityMapper` interfaces to facilitate CRUD operations and entity mapping.

Added extension methods in `Extensions.cs` to improve repository usability.

New interfaces for HTTP client services have been added, enhancing external API call handling.

Overall, these changes reflect a significant restructuring aimed at improving organization and preparing for future development.
2025-05-16 11:24:58 +02:00
Developer 02
0c529b199b Bump version numbers and enhance repository interfaces
- Incremented version numbers in project files for updates.
- Marked `ICRUDRepository` as obsolete; use `IRepository` instead.
- Improved parameter names and signatures in `IRepository`.
- Changed access modifiers in `DbRepository` for broader access.
- Updated `CreateAsync` and `UpdateAsync` methods for async operations.
- Implemented `ReadAsync` and `DeleteAsync` methods in `DbRepository`.
- Minor whitespace change in `.csproj` files.
- Retained package description in `DigitalData.Core.Infrastructure.csproj`.
2025-04-17 12:53:40 +02:00
Developer 02
5427a9722d Update package references and modify DbRepository access
- Added conditional package references for AutoMapper in
  `DigitalData.Core.Application.csproj` to support
  different target framework versions.

- Changed `DbRepository` class access modifier from
  `public` to `internal` to encapsulate implementation
  details within the current assembly.
2025-04-16 13:56:53 +02:00
Developer 02
c0524cbca2 Update target frameworks to include .NET 9.0
Updated multiple project files to support .NET 9.0 alongside .NET 7.0 and .NET 8.0. Affected files include:
- DigitalData.Core.API.csproj
- DigitalData.Core.Abstractions.csproj
- DigitalData.Core.Application.csproj
- DigitalData.Core.Client.csproj
- DigitalData.Core.DTO.csproj
- DigitalData.Core.Infrastructure.csproj

This change enables the use of new features and improvements in .NET 9.0.
2025-04-15 16:19:23 +02:00
Developer 02
a86989479f refactor(Application): hochgestuft auf 3.2 2025-01-20 10:18:13 +01:00
Developer 02
90c85814b0 refactor(DirectorySearchService): Methoden asynchron gemacht 2025-01-17 11:24:30 +01:00
Developer 02
92a7b959ab chore: unnötige Dateien entfernt und git ignore aktualisiert. 2025-01-16 22:38:05 +01:00
Developer 02
63ab47a288 refactor(DirectorySearchOptions): Machen Sie ServerName und Root erforderlich und UserCacheExpirationDays nullable double. 2025-01-16 22:28:36 +01:00
Developer 02
725b186db6 refactor(DIExtensions): AddDirectorySearchService-Methode entfernt und AddDirectorySearchService aktualisiert, um über Konfigurationseinstellungen konfiguriert werden zu können. 2025-01-15 17:22:14 +01:00
Developer 02
7ae95b729f Fix: Upgrade aufgrund einer Nuget-Paket-Abhängigkeit der abstrakten Schicht 2024-12-10 23:32:49 +01:00
Developer 02
4ed3e79565 chore(Anwendung): Hochgestuft von 2 auf 3 2024-12-10 23:19:27 +01:00
Developer 02
8d9de4502e refactor(Application): Verbesserung der CRUDService zur Steigerung der Typflexibilität und Wartbarkeit
- Entfernen redundanter generischer Einschränkungen für `TUpdateDto` in `CRUDService`.
- Aktualisierung der Methode `UpdateAsync`, um einen generischen Parameter für eine bessere Typflexibilität von `TUpdateDto` einzuschließen.
- Verbesserung der Typ-Einschränkungen durch Durchsetzung von `IUnique<TId>` direkt im Methodenumfang, wo zutreffend.
- Vereinfachung der Klasse zur Einhaltung bewährter Praktiken im Design generischer Dienste.
2024-12-10 23:17:41 +01:00
Developer 02
0169097671 Chore: Hinzufügen des .net 8-Frameworks zu allen .net-Projekten.
- Zentralisierte Nuget-Symbole.
 - Entfernte Projekte gelöscht.
2024-11-19 19:21:40 +01:00
Developer 02
96d03a5f59 chore: NuGet-Paketversionen für Application-, Infrastructure-, DTO- und Abstractions-Ebenen aktualisiert
- Version von 1.0.1.1 auf 2.0.0.0 für Application-, Infrastructure-, DTO- und Abstractions-Projekte aktualisiert.
2024-09-16 09:13:44 +02:00
Developer 02
993d407a48 feat: ReadService hinzugefügt und in ReadController integriert
- Generischen ReadService erstellt, um Lese- (ReadById, ReadAll) und Löschoperationen zu verwalten.
- ReadService in den ReadController integriert.
2024-09-16 09:08:27 +02:00
Developer 02
0bf8979a09 refactor: Einführung des IUnique<TId>-Interfaces für Entitäten und DTOs
- Aktualisiertes IBasicCRUDService-Interface, um Konsistenz bei einzigartigen Identifikatoren mit IUnique<TId> durchzusetzen
- DIExtensions-Methoden angepasst, um IUnique<TId>-Einschränkungen für DTOs und Entitäten einzuschließen
2024-09-13 16:30:52 +02:00
Developer 02
b6ac303c96 fix: HasEntity-Methode auf CountAsync aktualisiert
Die Implementierung der HasEntity-Methode wurde ersetzt, um die CountAsync-Methode des Repositories zu verwenden. Dies sorgt für eine effizientere Überprüfung der Existenz von Entitäten.
2024-09-11 10:54:41 +02:00
Developer 02
a6d554fbc2 refactor: Entfernte die HandleException Methode aus der CRUDService Klasse und dem Interface
- Die Methode `HandleException` wurde aus der `CRUDService` Klasse entfernt.
- Die Methode wurde ebenfalls aus dem `ICRUDService` Interface entfernt.
2024-09-11 10:05:15 +02:00
Developer 02
c6199cc0be refactor: Entfernte nicht benötigte _keyPropertyInfo und aktualisierte CreateAsync Methode
- Entfernte `_keyPropertyInfo` und die zugehörige Methode `KeyValueOf`, da sie nicht mehr benötigt wird.
- Aktualisierte `CreateAsync` Methode, um direkt `createdEntity.Id` zurückzugeben.
2024-09-11 10:03:04 +02:00
Developer 02
a6230419d8 refactor: ICRUDService, CRUDService, CRUDRepository und ICRUDRepository um IUnique<TId> Einschränkung zu erzwingen
- `IUnique<TId>` Einschränkung zu `TEntity` in den Schnittstellen `ICRUDService`, `CRUDService`, `ICRUDRepository` und `CRUDRepository` hinzugefügt.
- Relevanten Code aktualisiert, um die neue Einschränkung zu berücksichtigen und sicherzustellen, dass Entitäten `IUnique<TId>` implementieren.
2024-09-11 09:54:26 +02:00
Developer 02
b6cd520b72 refactor: CRUDService-Methoden auf vereinfachte Map-Methode umstellen
- `MapOrThrow` auf `Map` für das Mapping von DTOs in `CRUDService` geändert.
- Methoden-Signaturen und interne Logik angepasst, um die aktualisierten `Map`-Methoden zu verwenden.
- Ausnahmebehandlung und ID-Abruffunktionalität beibehalten.
2024-09-11 09:47:52 +02:00
Developer 02
e6849cd9c9 Fix: Überprüfung hinzugefügt, ob die Entität in UpdateAsync vorhanden ist
- Eine Überprüfung hinzugefügt, um sicherzustellen, dass die Entität vor dem Aktualisieren existiert.
- Eine Warnung wird protokolliert, wenn die Entität im Aktualisierungsprozess nicht gefunden wird.
- Das `updateDto` wird auf die bestehende Entität gemappt, anstatt eine neue zu erstellen.
2024-09-11 09:43:01 +02:00
Developer 02
d59350174c Refactor: Erzwinge IUnique<TId> Einschränkung für TUpdateDto in CRUDService
- Aktualisiert: `ICRUDService` und `CRUDService`, um die `IUnique<TId>`-Einschränkung für `TUpdateDto` sicherzustellen, dass Update-Datenübertragungsobjekte eine eindeutige Kennung enthalten.
2024-09-11 09:29:21 +02:00
Developer 02
0ad92e7592 Kommentare zur Dokumentation hinzugefügt und Pakete konfiguriert. 2024-06-20 16:20:50 +02:00
Developer 02
b7584a1632 Aktualisierter Gitignore. 2024-06-20 15:12:13 +02:00
Developer 02
316847a11b Gitignore aktualisieren 2024-06-20 14:00:32 +02:00
Developer 02
58e86e1405 Refaktorieren: Projektname von "Contracts" zu "Abstractions" geändert, um den Zweck besser widerzuspiegeln. 2024-06-20 12:17:30 +02:00
Developer 02
3844f9d8d8 Refactored ICRUDService interface to remove the generic TCRUDRepository parameter for simplification and improved readability. 2024-06-15 00:41:24 +02:00
Developer 02
0697f5ff58 feat: DirectorySearchOptions-Klasse hinzugefügt und DirectorySearchService refaktoriert, um IOptions für eine verbesserte Konfigurationsverwaltung zu verwenden. 2024-06-13 15:44:57 +02:00
Developer 02
ee045d5bfd Standard-String-Localizer aus Diensten entfernt. 2024-06-13 14:12:09 +02:00
Developer 02
2521d3d887 Ermöglicht die nachträgliche Modifikation der Data-Eigenschaft in DataResult<T>, indem sie von init-only auf setzbar geändert wird. 2024-05-02 16:03:47 +02:00
Developer 02
4b71836fea Erweiterung der DTOs und Implementierung der Lokalisierungsdienste
- Neue DTO-Extension-Methoden hinzugefügt, um die Verarbeitung und Zuweisung von Nachrichten und Benachrichtigungen in Ergebnisobjekten zu vereinfachen.
- Lokalisierungsunterstützung in der API-Schicht implementiert, einschließlich Cookie-basierter Lokalisierung und Konfiguration unterstützter Kulturen.
- Die Integration von StringLocalizer in die API-Schicht wurde durchgeführt, um eine nahtlose Mehrsprachigkeit zu ermöglichen.
- Fehlerbehandlung für fehlende Konfigurationseinstellungen verbessert.

Die Änderungen verbessern die Flexibilität und Wartbarkeit des Codes und unterstützen eine effizientere Internationalisierung der Anwendung.
2024-04-30 17:01:26 +02:00
Developer 02
f6d8721c27 Aktualisierte .gitignore 2024-04-30 11:24:21 +02:00
Developer 02
8188fa759f feat: Cookie-basierte Lokalisierung implementiert, ToLocal Erweiterungsmethoden hinzugefügt und Translation-Service entfernt. Stattdessen wird IStringLocalizer<T> verwendet, abhängig von der Situation wie Cookie-basierter Kultur oder Kultur basierend auf der Route. 2024-04-29 13:31:37 +02:00
Developer 02
1281d37239 Stage commit 2024-04-29 13:31:07 +02:00
Developer 02
70088fe42a Add Translation Extensions Methoden. 2024-04-26 10:24:44 +02:00
Developer 02
1e3c5755c4 Den Fehler in der WithFlag-Methode behoben und die Enum-Übersetzung integriert. 2024-04-26 10:06:28 +02:00
Developer 02
8e9dd5b0f9 Hinzufügen neuer Flags zum Flag-Enum 2024-04-23 10:27:33 +02:00
Developer 02
da3d1cd357 Überarbeiten Sie die Methoden zur Handhabung von Service-Nachrichtenflags, stellen Sie sicher, dass sie ordnungsgemäß in ICollection konvertiert werden, und verbessern Sie die Klarheit. 2024-04-23 10:23:30 +02:00
Developer 02
385a286ef5 Hinzufügen und Dokumentieren von Flag-Erweiterungsmethoden in ServiceMessageExtensions zum Setzen und Überprüfen von Flags 2024-04-22 16:10:57 +02:00
Developer 02
29cdbbf7b1 Refaktorisierung aller Nachrichteneigenschaften in ServiceMessage von List zu ICollection für verbesserte Flexibilität. 2024-04-22 15:02:20 +02:00
Developer 02
bb5837047a Refaktorisierung des Flag-Enums: Flag auf nullable gesetzt, HasFlag-Methode für Nullable-Prüfung aktualisiert, Null-Flag entfernt, SecurityBreachOrDataIntegrity für überlappende Probleme hinzugefügt. 2024-04-22 14:25:09 +02:00
Developer 02
40c3b6fdc1 Hinzugefügt WithFlag Methode zu ServiceMessageExtensions für das direkte Setzen von Flags auf IServiceMessage Instanzen. 2024-04-22 10:27:29 +02:00
Developer 02
4dea6b9b00 Flag-Enum implementiert und IServiceMessage mit Flag-Unterstützung aktualisiert
- Flag-Enum mit Null und SecurityBreach definiert.
- Flag-Eigenschaft und HasFlag-Methode zu IServiceMessage hinzugefügt.
2024-04-22 10:21:39 +02:00
Developer 02
fae750c1d8 Korrigiere Separator in Join-Methode und benenne Klasse um 2024-04-22 08:54:02 +02:00
Developer 02
36889df1c0 Funktion: Erweiterung von IServiceMessage mit Methoden zur Nachrichtenverwaltung
- Hinzufügen von Erweiterungsmethoden zu IServiceMessage für das Hinzufügen von Client-, Trace-, Debug-, Informations-, Warn-, Fehler- und kritischen Nachrichten.
- Einbeziehung von Methoden für direkte Nachrichten und auf Enum basierende Schlüssel, die Lokalisierung und benutzerdefinierte Formatierung unterstützen.
2024-04-19 14:08:33 +02:00
Developer 02
ce462a8b66 Funktion: Hinzufügen von strukturierten Logging-Erweiterungen und Korrektur eines Parameterfehlers
- Hinzufügen der Methoden `LogMessageList` und `LogServiceMessage` für verbessertes Nachrichten-Logging.
- Korrektur der Schreibweise des Parameters `separator`.
- Dokumentation der Methoden für bessere Klarheit.
2024-04-19 10:05:43 +02:00
Developer 02
052448b6bf Fügen Sie die InnerServiceError-Erweiterung für die Behandlung von 500-Fehlern hinzu
Führt die Methode InnerServiceError ein, um die Fehlerbehandlung in ControllerBase mit optionalen detaillierten Nachrichten oder Ausnahmen zu verbessern. Enthält Dokumentationskommentare.
2024-04-18 16:44:11 +02:00
Developer 02
c350c63b1f Fügen Sie 'ohne Nachricht' Methoden in ResponseService hinzu
Implementieren und dokumentieren Sie Dienstmethoden, die ohne zusätzliche Nachrichten funktionieren, um die Einfachheit der Schnittstelle zu verbessern.
2024-04-18 14:29:11 +02:00