Overview
Modernize the repository and data access infrastructure by adding asynchronous support across the existing EF6, EF Core, and Redis implementations, while also updating the UnitOfWork and addressing vulnerable/outdated package dependencies.
Changes
Repository Infrastructure
Add async counterparts to the existing Base Repository methods for:
- Entity Framework 6
- Entity Framework Core
- Redis
The existing synchronous APIs should remain available to preserve backward compatibility.
UnitOfWork
Update the UnitOfWork implementation to support asynchronous operations and provide proper async database workflows across the supported data access implementations.
Dependency Updates
Upgrade outdated and vulnerable NuGet packages to supported and secure versions.
This includes packages such as:
- AutoMapper
- Other dependencies identified as vulnerable or outdated
Package upgrades should preserve existing functionality and avoid unnecessary breaking changes.
Goals
- Provide consistent async support across the data access layer.
- Improve scalability by avoiding blocking database and Redis operations.
- Provide async-compatible UnitOfWork workflows.
- Address known package vulnerabilities.
- Keep existing synchronous APIs and behavior backward compatible where possible.
- Maintain compatibility across EF6, EF Core, and Redis implementations.
Acceptance Criteria
Overview
Modernize the repository and data access infrastructure by adding asynchronous support across the existing EF6, EF Core, and Redis implementations, while also updating the UnitOfWork and addressing vulnerable/outdated package dependencies.
Changes
Repository Infrastructure
Add async counterparts to the existing Base Repository methods for:
The existing synchronous APIs should remain available to preserve backward compatibility.
UnitOfWork
Update the UnitOfWork implementation to support asynchronous operations and provide proper async database workflows across the supported data access implementations.
Dependency Updates
Upgrade outdated and vulnerable NuGet packages to supported and secure versions.
This includes packages such as:
Package upgrades should preserve existing functionality and avoid unnecessary breaking changes.
Goals
Acceptance Criteria
CancellationTokenis supported where applicable.