0.0: Intro
In this module we'll give an overview of an n-tier application.
n-tier
Here we'll be setting up the foundation for an n-tier application. In an n-tier application we attempt to establish a separation of concerns, where entity models, contracts, services layer, unit tests, and presentation will all have their separate layers. In our C# application, these layers are demarcated by assemblies and inside each assembly, our complexity for each layer will be encapsulated.
OVERVIEW OF THE APP'S STRUCTURE
As we separate our projects into various assemblies, we'll give an analysis of each layer. Here are a few notes for starting purposes:
Layer
Purpose
ElevenNote.Data
This is where we setup our database using Entity Framework
ElevenNote.Contracts
Houses interfaces for method signatures used in Unit Testing and the Service layer.
ElevenNote.Services
The messenger that helps the data and presentation tiers communicate. Examples of services include authentication and authorization
ElevenNote.Models
View Models represent the data that we want to show on the page. They are useful because you can pull specific properties from multiple tables
ElevenNote.WebMVC
This is the MVC part of the app and uses Razor to display our information. You might also see this referred to as the presentation tier.
ElevenNote.WebAPI
Web APIs provide us with logic that allows us to pass data to other presentation tiers - i.e. mobile, Angular, etc
Last updated