ASP.NET Core is a re-imagining of the .NET Framework that frees developers from Visual Studio and Windows. You can now build and run cross-platform .NET applications on any OS, with any IDE, and using the tools that you choose. The entire framework is open-source, and has been developed with many contributions from the community. While ASP.NET Core is relatively new, Microsoft is heavily investing in it, promoting ASP.NET Core as their web framework of choice for the foreseeable future. Whether you are building traditional web applications or highly performant APIs for client side or mobile applications, ASP.NET Core could be the framework for you.
ASP.NET Core in Action is for C# developers without any web development experience who want to get started and productive using ASP.NET Core to build web applications. In the first half of the book, you will work through the basics of a typical ASP.NET Core application, focusing on how to create basic web pages and APIs using MVC controllers and the Razor templating engine. In the second half, you will build on this core knowledge looking at more advanced requirements and how to add extra features to your application. You will learn how to secure your application behind a login screen, how to handle configuration and dependency injection, and how to deploy your application to production. In the last part of the book you will look in depth at further bending the framework to your will by creating custom components and using more advanced features of the framework.
Part 1: Getting Started with MVC
1. Getting Started with ASP.NET Core
1.1. An introduction to ASP.NET Core
1.1.1. Using a web framework
1.1.2. The benefits and limitations of ASP.NET
1.1.3. What is ASP.NET Core?
1.2. When to choose ASP.NET Core
1.2.1. What type of applications can you build?
1.2.2. If you're new to .NET development
1.2.3. If you're a .NET Framework developer creating a new application
1.2.4. Converting an existing ASP.NET application to ASP.NET Core
1.3. How does ASP.NET Core work?
1.3.1. How does an HTTP web request work?
1.3.2. How does ASP.NET Core process a request?
1.4. Choosing a platform for ASP.NET Core
1.4.1. Advantages of using the .NET Framework
1.4.2. Advantages of using .NET Core
1.5. Preparing your development environment
1.5.1. If you're a Windows user
1.5.2. If you're a Linux or macOS user
2. Your first application
2.1. A brief overview of an ASP.NET Core application
2.2. Creating your first ASP.NET Core application
2.2.1. Using a template to get started
2.2.2. Building the application
2.3. Running the web application
2.4. Understanding the project layout
2.5. The Program class � building a web host
2.6. The Startup class - configuring your application
2.6.1. Configuring application settings
2.6.2. Adding and configuring services
2.6.3. Defining how requests are handled with middleware
2.7. MVC middleware and the Home Controller
2.8. Generating HTML with Razor template Views
3. Handling requests with the middleware pipeline
4. Creating web pages and RESTful APIs with MVC Controllers
5. Mapping URLs to methods using routing in ASP.NET Core
6. Working with models in MVC
7. Rendering HTML using Razor Views
Part 2: Building complete applications
8. Configuration in ASP.NET Core
9. Service configuration with dependency injection
10. Saving data with Entity Framework Core
11. The MVC filter pipeline
12. Adding users to your application with Identity and authentication
13. Authorisation: Securing your application
14. Deploying your application
Appendix A: .NET Core vs .NET Framework
- Using MVC to deliver dynamically generated web pages
- Securing applications with login requirements
- Interacting with a RDMS using Entity Framework Core
- Publishing an ASP.NET Core application to a server
- Unit and integration testing
- Creating custom middleware and filters