Summary
In this chapter, we explored ASP.NET Core MVC, which allows us to create rich web user interfaces with Razor and C#.
We saw how to decouple the model from the presentation using view models. View models are classes specially crafted around a view. For example, rather than passing a data or domain model to a view and letting the view do calculations, the controller does the calculation instead and passes the results to the view. This way, the view only has one responsibility: displaying the user interface, the page.
In the next chapter, we explore the web API counterpart to the MVC and View Model patterns. We then look at our first Gang of Four (GoF) design patterns and deep dive into ASP.NET Core dependency injection. All of that pushes us further down the path of designing better applications.