- Updated NuGet packages across projects for compatibility and bug fixes
- Switched to Microsoft.OpenApi and refactored Swagger setup
- Added AES encryption/decryption for connection strings
- Stored encrypted DB/cache connection strings in config
- Improved encryption reliability in Program.cs
- Added AutoMapper to multiple projects for mapping support
- Enhanced security and code maintainability
Moved DecryptConnectionString to KBR.Shared.Extensions for reuse and improved configuration access. Added Encryption property to CacheOptions and appsettings for conditional decryption of cache connection strings. Updated ServiceCollectionExtensions to decrypt SQL Server cache connection strings when needed. Upgraded NuGet packages across projects to latest .NET 8/10.0.x versions. Included minor code cleanups and OpenApiSecurityScheme improvements.
Upgraded target frameworks to .NET 10.0 across multiple projects for latest compatibility. Added documentation for the auto-generated Program class in PortBlog.API.xml. No other functional changes.
Upgraded projects to .NET 9.0 and added new projects `KBR.Cache`, `KBR.Shared`, and `KBR.Shared.Lite` to the solution. Introduced JWT authentication and OTP handling with new models, services, and configuration options. Updated database schema with new entities `Users` and `RefreshTokens`, and added migrations for schema changes. Implemented caching strategies using `AppDistributedCache` with support for in-memory, SQL Server, and Redis. Enhanced email handling with `MailHelpers` for domain replacement. Updated controllers, repositories, and configuration files to support new features.