ASP.NET Core Web API Fundamentals
In this course, you'll learn how to build an API with ASP.NET Core that connects to a database via Entity Framework Core from scratch.
What you'll learn
ASP.NET Core is a great platform for building APIs with. In this course, ASP.NET Core Web API Fundamentals, you'll learn how to build an API with ASP.NET Core that connects to a database via Entity Framework Core. First, you’ll learn how to get started with API building in ASP.NET Core. Next, you’ll discover how to get and manipulate data from services, use the built-in dependency injection system, and work with configuration files. Finally, you’ll learn how to connect to a database through Entity Framework Core and how to document your API. When you’re finished with this course, you will be able to build an API from scratch with ASP.NET Core.
Table of contents
- Coming Up 3m
- About the Course Structure 4m
- Course Prerequisites 0m
- Frameworks and Tooling 4m
- ASP.NET Core: The Big Picture 4m
- Approaches to Building APIs with ASP.NET Core 2m
- Demo: Creating and Running a New ASP.NET Core Project 10m
- Demo: Running an ASP.NET Core Project Using the CLI 3m
- Demo: Inspecting the ASP.NET Core API Project Code Structure 7m
- The ASP.NET Core Request Pipeline & Middleware 2m
- Demo: Configuring the ASP.NET Core Request Pipeline 3m
- Demo: Working with Different Environments 4m
- Summary 2m
- Coming Up 1m
- Clarifying the MVC Pattern 4m
- Demo: Registering API Services on the Container 2m
- Demo: Returning Resources (Part 1) 3m
- Learning About Routing 5m
- Demo: Returning Resources (Part 2) 4m
- Demo: Using Postman 5m
- Demo: Improving the Architecture with Model Classes 7m
- The Importance of Status Codes 4m
- Demo: Returning Correct Status Codes 5m
- Demo: Returning Child Resources 8m
- Describing Error Responses with Problem Details 1m
- Demo: Manipulating ProblemDetails Responses 3m
- Content Negotiation 4m
- Demo: Formatters and Content Negotiation 4m
- Demo: Getting a File 6m
- Summary 2m
- Coming Up 1m
- Passing Data to the API 3m
- Demo: Creating a Resource 9m
- Demo: Validating Input 7m
- A Validation Alternative 1m
- Demo: Updating a Resource 6m
- Partially Updating a Resource 3m
- Demo: Adding Support for JsonPatchDocument 2m
- Demo: Partially Updating a Resource 9m
- Demo: Deleting a Resource 2m
- Demo: Creating a File 5m
- Summary 3m
- Coming Up 1m
- Inversion of Control and Dependency Injection 4m
- Demo: Injecting and Using a Logger 8m
- Demo: Logging Exceptions 3m
- Demo: Globally Handling and Logging Exceptions 8m
- Demo: Replacing the Default Logger and Logging to a File 6m
- Demo: Implementing and Using a Custom Service 5m
- Demo: Registering a Service by Interface 7m
- Demo: Working with Configuration Files 4m
- Demo: Scoping Configuration to Environments 4m
- Summary 2m
- Coming Up 1m
- Introducing the Repository Pattern 3m
- Demo: Introducing the Repository Pattern (Part 1) 3m
- The Purpose of Asynchronous Code 4m
- Demo: Introducing the Repository Pattern (Part 2) 7m
- Demo: Returning Data from the Repository When Requesting Resources (Part 1) 5m
- Demo: Using AutoMapper to Map Between Entities and DTOs 6m
- Demo: Returning Data from the Repository When Requesting Resources (Part 2) 10m
- Demo: Creating a Resource 7m
- Demo: Updating a Resource 3m
- Demo: Partially Updating a Resource 4m
- Demo: Deleting a Resource 4m
- Summary 1m
- Coming Up 1m
- A Few Words on Securing APIs 3m
- Implementing Token-based Security 3m
- Demo: Creating a Token 11m
- Demo: Requiring and Validating a Token 6m
- Demo: Using Information from the Token in Your Controller 4m
- Working with Authorization Policies 2m
- Demo: Using Information from the Token in an Authorization Policy 4m
- Generating a Token with dotnet user-jwts 2m
- Demo: Generating a Token with dotnet user-jwts 10m
- Improving Token-based Security with OAuth2 and OpenID Connect 2m
- Summary 2m
- Coming Up 1m
- Versioning Your API 2m
- Demo: Supporting Versioning 4m
- Demo: Versioning Your API 5m
- Demo: Supporting Versioned Routes 2m
- Documenting Your API with OpenAPI / Swagger 4m
- Demo: Adding Swagger Support to a Project 3m
- Demo: Incorporating XML Comments on Actions 4m
- Demo: Describing Response Types and Status Codes 2m
- Demo: Supporting Different Documentation Versions 5m
- Documenting API Authentication 2m
- Demo: Adding Authentication Support to Your Documentation 4m
- Summary 2m
- Coming Up 1m
- Testing API Endpoints 3m
- Demo: Installing the HTTP_REPL 2m
- Demo: Testing an API with the HTTP_REPL 9m
- Demo: Supporting Authenticated Requests When Testing with the HTTP_REPL 4m
- Demo: Testing with .http Files 7m
- Demo: Supporting Authenticated Requests When Testing with .http Files 2m
- Demo: Facilitating API testing with Endpoints Explorer 2m
- Hosting and Deploying an ASP.NET Core API 2m
- Considering Your Deployment and Hosting Options 2m
- Dealing with Proxies and Load Balancers 2m
- Demo: Configuring the Forwarded Headers Middleware 1m
- Demo: Deploying to an Azure App Service 9m
- Demo: Configuring Logging on Application Insights 12m
- Demo: Improving Storing Secrets with Azure Key Vault 8m
- Learning More About Deployments 2m
- Summary 2m