Please advise the modern architecture of ASP.NET WebApi application (better .NET Framework not Core) with the latest innovations. For example: Unit of work pattern, controller -> manager -> repository, Automapper, xUnit, Serilog or..., a reliable migration mechanism for Oracle - Liquibase or... Asynchronous execution - async / await. Requirements: authentication - AD / Windows, DB - Oracle. If there are code examples it would be ideal
UPDATE 1 What about ORM and migration system. In my opinion code first approach and EF migrations is good because the model suit to DB copletely, but it is risky. Previously I made Database Project for MS Sql Server and all change scripts was generated by comparing schemas of original DB and DB changed by EF migration, like this:
- create models
- apply migration to local (dev) database
- compare original DB and changed DB, ectract/generate change SQL scripts
- create deployment migration for CI/CD (DB project, liquibase or similar)
- rollback local DB and test deployment migration
- commit and push
It looks strange, but practice shows that using EFs migrations leads to data loss