Course Highlights
  • Learn, Understand and Create ASPNET Core Web API From Scratch using .NET8
  • Building scalable REST APIs from scratch using ASPNET CORE and C#
  • Learn and Apply Entity Framework Core to perform CRUD operations on a SQL Server database
  • Use Entity Framework Core in a code first approach
  • Understand and Apply the Repository Pattern in ASPNET Core Web API
  • Use Domain Driven Design (DDD) approach to create domain first models and project
  • Understand RESTful Principles and Apply them in ASPNET Core Web API
  • Understand Best practices and Clean Coding Techniques, Know Shortcuts and Tips and Tricks
  • Add Validations In ASPNET CORE Web API
  • Use popular third-party libraries such as AUTOMAPPER
  • Understand and Use Interfaces, Inheritance, Dependency Injection etc
  • Understand and Implement Authentication and Role based Authorization to Authenticate and Authorize the ASPNET Core Database
  • Create JWT tokens to Authenticate API
  • Test ASPNET Core Web API using Swagger and Postman
  • Use ASPNET Core Identity in ASPNET Core Web API to Authenticate and add Role based Authorization
  • Learn Filtering, Sorting and Pagination in ASPNET Core Web API
Curriculum

9 Topics
Introduction to building ASP.NET Core Web APIs using .NET8
Prerequisites
Setting up development environment
Download and Install Visual Studio 2022
Install .NET SDK and .NET Runtime
Install SQL Server Management Studio
Getting help
Complete Source Code & GITHUB Repository Link
[OLD Content] Complete Source Code and GITHUB Repository

14 Topics
Introduction
Create New ASPNET Core Web API
Understand ASP.NET Core Web API and File Structure
Understand REST and HTTP Verbs
Routing In ASP.NET Core Web API
Running and Calling ASP.NET Core Web API
Understanding Our Domain (Domain Driven Development)
Create Domain Models
Adding Entity Framework Core Packages
Creating the DBContext Class
Adding ConnectionString To The Database In Appsettings.Json
Understanding Dependency Injection & Injecting DbContext Into Our Application
Run EF Core Migrations
Quiz For Section 2

9 Topics
Introduction
Create New Controller (Regions Controller)
Get All Regions Action Method
Get Region By Id Action Method
DTOs and Domain Models
Change Methods To Use DTOs
Create Region Action Method
Update Region Action Method
Delete Region Action Method

7 Topics
Introduction
Asynchronous Programming and Implement Async Await In our Methods
Repository Pattern and Benefits
Implement Repository Pattern In ASP.NET Core Web APIs
Add Other Methods To Repository
Automapper Introduction
Implement Automapper

8 Topics
Introduction
Seeding Data Using Entity Framework Core
Creating Walks Controller and Create New Walk Action Method
Get All Walks Action Method
Navigation Properties In Entity Framework Core
Get Walk By Id Action Method
Update Walk Action Method
Delete Walk Action Method

3 Topics
Introduction To Model Validations
Adding Model Validations To Endpoints
Custom Validate Model Attribute

5 Topics
Introduction
Seeding Data in SQL Server
Filtering
Sorting
Pagination

15 Topics
Introduction
Authentication Flow
Setting Up Authentication - Install Nuget Packages
Testing Authentication Without JWT Token
Setting Up Identity DbContext
Seeding Roles
Run EF Core Migrations To Create Identity Database
Setting Up Identity
Create Auth Controller and Register Action Method
Create Login Action Method
Create JWT Token in ASP.NET Core Web API
Inject TokenRepository and Create Token
Facing 401 Unauthorized?
Role Based Authorization
Add Authorization To Swagger

6 Topics
Introduction
Create Domain Model For Image Upload
DbContext changes and Migrations For Image Upload
New Controller and Action Method for Image Upload
Image Upload Repository Implementaion
Serving Static Files Through ASPNET Core Web API

4 Topics
Introduction To Logging
Add Logging to Console in ASP.NET Core Web API
Add Logging to Text File In ASP.NET Core Web APIs
Global Exception Handling In ASP.NET Core Web APIs

4 Topics
What is Versioning and How To Implement Versioning in ASP.NET Web API
Implement Versioning in ASP.NET Core Web API By Folder Structure
Implement Versioning By Nuget Package - Proffered Approach
Fix Versioning In Swagger

7 Topics
Consuming REST Web APIs
Creating ASP.NET MVC Web Application
GET - Consume Web API
POST - Consume Web API
GET single Region - Edit Region Prerequisite
PUT - Updating Using Web API
DELETE - Deleting a Resource using Web API

1 Topic
Deploying ASP.NET Web API To Azure

2 Topics
BONUS Lecture
Old .NET 6 Content Below

17 Topics
Introduction
Install GIT and Create New GIT Repository
Create New ASP.NET Web API
Pushing New API to GIT
Understanding Our New .NET Web API
Understanding REST and HTTP Verbs
Running The Project And Using Swagger
Understanding Our Domain
Creating Domain Models In Our ASP.NET Web API
Install Entity Framework Core Nuget Packages
Create DBContext
Create Connection String To Database
Understanding Dependency Injection
Injecting DbContext Class
Running EF Core Migrations
Seeding Data Into Database
Saving Our Changes To GIT

11 Topics
Introduction
Create Regions Controller
Testing Get All Regions Method
Understanding The Repository Pattern
Create Region Repository
Test API in Swagger
Adding DTOs or Contracts
Install and Use Automapper
Understand Synchronous vs ASynchronous Code
Making Our Code Asynchronous
Saving Our Changes To GIT

15 Topics
Introduction
Creating Repository Method Get Region By Id
Creating Controller Method For GetRegionById
Testing GetRegionById method using Swagger
Creating Repository Method for AddRegion
Creating Controller Method For AddRegion
Testing AddRegion Method using Swagger
Creating Repository method for DeleteRegion
Creating Controller Method For DeleteRegion
Testing DeleteRegion method using Swagger
Creating Repository method for UpdateRegion
Creating Controller Method For UpdateRegion
Testing UpdateRegion method using Swagger
Saving Our Changes To GIT
Assignment For Next Section - Walks API

16 Topics
Introduction
Create Repositories For Walks And Add To Services
New repository method for GetAllWalks
New Controller and method for GetAllWalks
Testing GetAllWalks method using Swagger
Adding Navigation Properties For WalkDifficulty and Region
Creating Repository Method for GetWalkById
Creating Controller Method For GetWalkById
Testing GetWalkById method using Swagger
New repository method and Controller Method for AddWalk
Testing AddWalk method using Swagger
New repository method and Controller Method for UpdateWalk
Testing UpdateWalk method using Swagger
New Repository Method and Controller Method for DeleteWalk
Testing DeleteWalk method using Swagger
Saving Our Changes To GIT

8 Topics
Introduction
Create Repositories For WalkDifficulty And Add To Services
New Method For GetAllWalkDifficulties and Swagger Testing
New Method For GetWalkDiffultyById and Swagger Testing
New Method For AddWalkDifficulty and Testing In Swagger
New Method For UpdateWalkDifficulty and Testing In Swagger
New Method For DeleteWalkDifficulty and Testing In Swagger
Saving Our Changes To GIT

14 Topics
Introduction
Validating Region Controller - AddRegionRequest Model
Testing AddRegionRequest Validation
Validating Region Controller - UpdateRegionRequest Model
Validating Walks Controller - AddWalkRequest Model
Validating Walks Controller - UpdateWalkRequest Model
Validating WalkDifficulty Controller
Saving Our Changes to GIT
Introduction To Fluent Validations
Setting Up Fluent Validations
Adding AddRegion Validations Using Fluent Validations
Adding UpdateRegion Validations Using Fluent Validations
Adding Validations For WalkDifficulties API Using Fluent Validations
Adding Validations For Walks API Using Fluent Validations

12 Topics
Introduction
Authentication Flow
Setting Up Authentication
Testing Authentication Without Token
Creating Users and Static User Repository
Creating Auth Controller and Login Method
Creating Token Handler And Generate Token
Testing Login Method and Getting Token
Role Based Authorization
Adding Authentication and Authorization To All APIs
Changing Swagger To Add Authentication
Add EF Core and Add Users To Database

  Write a Review

Build ASP.NET Core Web API - Scratch To Finish (.NET8 API)

Go to Paid Course