Flexbase Solution Structure

Now lets look at the layer where all your code executes, and those are the endpoints.

We have three endpoints by default. One is the Asp.Net Core WebAPI endpoint, the second one is the Handlers endpoint and the last one is the Subscribers endpoint We have already spoken about the subscriber projects and Handler projects.

The WebAPI references the WebControllers project in Orchestration layer. The web controller project is kept separate so that it becomes easy to swap the endpoint with different configurations by retaining the controller code. We will discuss that more when we learn about the crud operations.

The WebAPI end point takes care of hosting the web application.

The Handler project, is a worker background service created using .NET core application.

It is same for the Subscribers because they will run in the background and it also works with both Linux and Windows deployments.

In the next section, we will learn more about the startup classes.