Folder Structure

.Api

The Api Project holds Routes and Controllers that are set up to handle calls to the application's endpoints.

.Application

The Applicaiton layer holds handlers that are able to perform DB queries or commands and/or use services to communicate with other external applications. Interfaces are usually defined in the application project.

.Domain

Stores Entities/Data Model objects often linked to DB tables.

.Infrastructure

This is the abstraction layer that holds dependencies/implementations of Interfaces used in the application layer. Dependencies are wired to their Interfaces inside of DependencyInjection.cs

.Persistence

Holds database connection strings, queries and migrations used for communicating with a DB.