.Net Core Microservices - The Complete Guide (.Net 8 Mvc)
Last updated 5/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 660.80 MB | Duration: 24h 48m
Last updated 5/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 660.80 MB | Duration: 24h 48m
Learn Microservices architecture with .NET Core MVC(.NET 8), Entity Framework Core, .NET Identity with Azure Service Bus
What you'll learn
.NET Core Microservices - The Complete Guide (.NET 8 MVC)
Implementing 7 microservices using .NET 8
.NET API with Authentication and Authorization
Role based authorization with .NET Identity
Async and Sync communication between Microservices
Azure Service Bus - Topics and Queues
Gateways in Microservices
Implementing Ocelot gateway
Swagger Open API implementation
N-Layer implementation with Repository Pattern
ASPNET Core Web Application with Bootstrap 5
Entity Framework Core with SQL Server Database
Requirements
.NET Core CRUD experience
.NET API CRUD experience
Entity Framework Core CRUD experience
Visual Studio 2019 / 2019 Preview (if using .NET 8)
SQL Server Management Studio 2018
Description
Is your project or your team suffering from the drawbacks of a Monolithic application? or are you one of those developers who have heard the buzz word about Microservices but you don't know where to start from? or are you wondering if a microservices architecture is the right fit for your .NET project? or are you tired of other courses where they give you a good start but halfway through the course you wonder what is going on and nothing makes sense!If so, then this is the perfect course for all of your questions!You will learn the foundational elements of microservices by incrementally building a real microservices based application with .NET 6, step by step. We will be building multiple microservices and and for authentication and authorization we will be using .NET Identity! Learn how to build Microservices in the .NET world using .NET API, Ocelot, .NET Identity, Entity Framework Core and clean architecture using the latest .NET 8!You will develop e-commerce modules over Product, Shopping Cart, Ordering, Payment and Email microservices with SQL Server communicating over Azure Service Bus and using Ocelot API Gateway. You can find Microservices Architecture and Step by Step Implementation on .NET which step by step developing this course with extensive explanations and details.Along with this you’ll develop following microservices and items:Product Microservice.NET Identity MicroserviceCoupon MicroserviceShopping Cart MicroserviceOrder MicroserviceEmail MicroservicePayment MicroserviceOcelot Gateway ProjectMVC Web ApplicationOn top of all these, you'll learn how to write quality code, not just how to build microservices. In this course you will see the demonstrating a layered application architecture with best practices.Is this course for you?If you are the developer who likes to get hands dirty with programming this is the perfect course! I love to code from scratch and explain the basics, so that is a main considering for this course as well! This course is very practical, about 90%+ of the lessons will involve you coding along with me on this project.By the end of this course, you will have an application with 7 fully working .NET based microservices but most importantly you will understand every line of code, how the microservices work together and why we ended up with the final implementation.
Overview
Section 1: Section 1 Introduction
Lecture 1 Introduction
Lecture 2 What we will Build
Lecture 3 Course Overview
Lecture 4 Why Microservices?
Lecture 5 Microservice Architecture
Lecture 6 Project Architecture
Lecture 7 Tools Needed
Lecture 8 What this course is NOT about?
Lecture 9 Prerequisites
Lecture 10 Project Resources
Section 2: Section 2 Coupon API - Getting Started
Lecture 11 Create Empty Solution_Backup
Lecture 12 Create Folder Structure
Lecture 13 Create Coupon API
Lecture 14 Create Coupon and CouponDTO
Lecture 15 Install Nuget Packages
Lecture 16 Create AppDbContext
Lecture 17 Create Coupon API Database
Lecture 18 Seed Database
Lecture 19 Get all and Get Coupon by ID
Lecture 20 Common Response
Lecture 21 AutoMapper
Lecture 22 Coupon API CRUD Endpoints
Section 3: Section 3 Coupon API - CRUD
Lecture 23 Create Web Project
Lecture 24 Create Request and Response DTO
Lecture 25 Base Service Interface
Lecture 26 Base Service Implementation
Lecture 27 Coupon Service Interface
Lecture 28 Register Services in Program Class File
Lecture 29 Endpoints in Coupon Service
Lecture 30 Bootswatch Theme and Bootstrap Icons
Lecture 31 Coupon Controller
Lecture 32 API Call in Action
Lecture 33 Coupon Index View
Lecture 34 Create Coupon View
Lecture 35 Create Coupon in Action
Lecture 36 Delete Coupon and Error
Lecture 37 Delete Coupon in Action
Lecture 38 Toastr Notifications
Section 4: Section 4 Auth API
Lecture 39 Create Auth API and NuGet Packages
Lecture 40 Add DbContext and Create Identity Tables
Lecture 41 Add Custom Properties to User Table
Lecture 42 Endpoints for Login and Register
Lecture 43 Add DTO's
Lecture 44 Configure JwtOptions
Lecture 45 IAuth Service
Lecture 46 Register Endpoint in Auth Service
Lecture 47 Register in Action
Lecture 48 Login in Action
Lecture 49 Generate Jwt Token
Lecture 50 Token in Action
Lecture 51 Assign Role
Section 5: Section 5 Consuming Auth API
Lecture 52 Add DTO's in Web Project
Lecture 53 Auth Service in Web Project
Lecture 54 Auth Controller in Web Project
Lecture 55 Login and Register UI
Lecture 56 Dropdown for Role
Lecture 57 Register in Action with Role
Lecture 58 Login in Action
Lecture 59 Token Provider Services
Lecture 60 Sign in a user in .NET Identity
Lecture 61 Logout in Action
Lecture 62 Adding Roles in Token
Lecture 63 Validation with Login and Register
Lecture 64 Internal Server Error
Lecture 65 Addd Authentication to Swagger Gen
Lecture 66 Passing Token to API
Lecture 67 Clean Code
Lecture 68 Roles Demo
Section 6: Section 6 Product API
Lecture 69 Product API Base Setup
Lecture 70 Assignment Product API
Lecture 71 Assignment Product API in Action
Lecture 72 Assignment - Consuming Product API Part 1
Lecture 73 Assignment - Consuming Product API Part 2
Section 7: Section 7 Home Page and Details
Lecture 74 Home Controller Index Action
Lecture 75 Home Page UI
Lecture 76 Details Get Action Method
Lecture 77 Details UI
Lecture 78 Add Count in Product
Section 8: Section 8 Shopping Cart
Lecture 79 Create Project and NuGet Packages
Lecture 80 Create Model and DTO's
Lecture 81 Basic API Setup
Lecture 82 Create Cart API Controller
Lecture 83 Cart Upsert Logic Part 1
Lecture 84 Cart Upsert Logic Part 2
Lecture 85 Remove Cart Details
Lecture 86 Load Shopping Cart
Lecture 87 Calling Product API from Shopping Cart
Lecture 88 Interservice API Call in Action
Lecture 89 Apply and Remove Coupon Endpoints
Lecture 90 Consuming Coupon API
Section 9: Section 9 Shopping Cart in Web Project
Lecture 91 Add Cart Service
Lecture 92 Load Shopping Cart in Web Project
Lecture 93 Fixing a Bug
Lecture 94 Add Items to Shopping Cart
Lecture 95 Shopping Cart UI
Lecture 96 Shopping Cart Functional
Lecture 97 Delegating Handlers
Lecture 98 Shopping Cart Bug
Lecture 99 Async in Project
Lecture 100 Async vs Sync Communication in Microservice
Section 10: Section 10 Service Bus
Lecture 101 Service Bus in our Architecture
Lecture 102 Create Service Bus in Azure
Lecture 103 Create Queue in Service Bus
Lecture 104 MessageBus Interface
Lecture 105 MessageBus Implementation
Lecture 106 Post Message to Service Bus
Lecture 107 More Properties in Cart
Section 11: Section 11 Email API - Service Bus Receiver
Lecture 108 Setup Email and DTO's
Lecture 109 Implement Processor for Service Bus
Lecture 110 Register Methods to Processor
Lecture 111 Register Service Bus Consumer on Application Start
Lecture 112 Consuming Messages in Action
Lecture 113 Asynchronous Communication in Action
Lecture 114 Assignment - Register User Queue
Lecture 115 Assignment Solution Part 1 - Send Message to Queue
Lecture 116 Assignment Solution Part 2 - Processor on Register User Queue
Section 12: Section 12 Checkout UI and Order API
Lecture 117 Checkout UI
Lecture 118 Dynamic Checkout UI
Lecture 119 Create Order API
Lecture 120 Add DTO's in Order API
Lecture 121 Order Header and Details Model and DTO's
Lecture 122 Order API Base Setup
Lecture 123 Mapping Config for Order API
Lecture 124 Constants in Order API
Lecture 125 Order Create Endpoint
Lecture 126 Create Order Service
Lecture 127 Create Order Header
Section 13: Section 13 Stripe Checkout
Lecture 128 Stripe Flow and Stripe DTO
Lecture 129 Order Confirmation Page
Lecture 130 Configure Stripe in Project
Lecture 131 Create Stripe Session in Order API
Lecture 132 Call Stripe Session Endpoint from Web Project
Lecture 133 Stripe Bug
Lecture 134 Manage Stripe Coupons
Lecture 135 Stripe Coupons and Order in Action
Lecture 136 Validate Stripe Session
Lecture 137 Payment Intent and Status
Section 14: Section 14 Rewards API
Lecture 138 Topic and Subscription in Service Bus
Lecture 139 Create Rewards API
Lecture 140 Setup DBContext and Rewards Table
Lecture 141 Publish Message to Topic
Lecture 142 Send Message to Topic in Action
Lecture 143 Reward Service
Lecture 144 Add Service Bus Consumer to Rewards API
Lecture 145 New Method in Email Service
Lecture 146 Consumer Order Created Subscription Message
Lecture 147 Solving Bug with Consumers
Section 15: Section 15 Order Management
Lecture 148 Get All and Individual Order Endpoints
Lecture 149 Update Order Status Endpoint
Lecture 150 Add Endpoints to Order Service
Lecture 151 Order List UI
Lecture 152 Configure Database Endpoint
Lecture 153 Load Datatables
Lecture 154 Order Details Get Action
Lecture 155 Dynamic Order Details UI
Lecture 156 Dynamic Status Buttons
Lecture 157 Dynamic Status Updates
Lecture 158 Add Status Filter in URL
Lecture 159 Modify Controller to Accept Status
Lecture 160 Toggle UI Filters
Lecture 161 Filter in Action
Section 16: Section 16 Upload Images
Lecture 162 Modify Product Model and DTO
Lecture 163 Modify Base Service for Form File
Lecture 164 Post Endpoint in ProductAPI
Lecture 165 Upload Image on Create Product
Lecture 166 Solve Bug with Create Product
Lecture 167 Delete Product with Image
Lecture 168 Update Product Image in Action
Lecture 169 Custom Validation with Data Annotations
Section 17: Gateway
Lecture 170 Gateway Introduction
Lecture 171 Create Gateway Project
Lecture 172 Configure Application to use Ocelot
Lecture 173 Add Authentication to Ocelot
Lecture 174 Add First Ocelot Route
Lecture 175 Product Functional with Ocelot
Lecture 176 Ocelot Coupon Endpoints
Lecture 177 Ocelot Assignment
Lecture 178 Shopping Cart Endpoints with Ocelot
Lecture 179 Order Endpoints in Ocelot
Lecture 180 Clean Code
Lecture 181 Ocelot Bug
Lecture 182 Small UI Update
Section 18: Azure Deployment
Lecture 183 Remove Ocelot
Lecture 184 Create Database for API's
Lecture 185 Production Appsettings with Azure SQL Database
Lecture 186 Deploy Auth API to Azure
Lecture 187 Host API and Modify Environment Variable
Lecture 188 Deploy Web Project
Lecture 189 Microservices Functional on Azure
Lecture 190 Deploy Gateway Project
Lecture 191 Gateway in Action on Azure
Section 19: OLD COURSE - Introduction (Will be removed in Nov 2023)
Lecture 192 Introduction
Lecture 193 Why microservices?
Lecture 194 .NET 7 Update
Lecture 195 Course Overview
Lecture 196 Prerequisite
Lecture 197 Microservices architecture
Lecture 198 Project Architecture
Lecture 199 Tools needed
Lecture 200 Update Tools Needed
Lecture 201 What we will build?
Lecture 202 Project Resources
Section 20: OLD COURSE - Product API basic setup (Will be removed in Nov 2023)
Lecture 203 Introduction
Lecture 204 .NET 6 Change
Lecture 205 .NET 6 Nullable Change
Lecture 206 Create project
Lecture 207 Create product API Project
Lecture 208 Nullable Update
Lecture 209 NuGet packages for Product API
Lecture 210 Configure DbContext for Product API
Lecture 211 Create tables for Product database
Section 21: OLD COURSE - Product API Advance Setup (Will be removed in Nov 2023)
Lecture 212 Introduction
Lecture 213 Create DTO's inside Product API
Lecture 214 Product Repository Interface
Lecture 215 AutoMapper Configuration in Product API
Lecture 216 Product Repository Implementation Part 1
Lecture 217 Product repository implementation Part 2
Lecture 218 Product API controller HTTPGET
Lecture 219 Product API controller POST PUT DELETE
Lecture 220 Seed products in Product API
Lecture 221 Azure Storage Explorer for Images
Lecture 222 Product Repository Interface and DTOS
Lecture 223 Base Service Interface and API Request Model
Lecture 224 Base Service Implementation
Lecture 225 Product Service in Mango Web Project
Lecture 226 Configure ProductService and HttpClient in Startup
Lecture 227 Bootstrap V5
Section 22: OLD COURSE - Product CRUD (Will be removed in Nov 2023)
Lecture 228 Introduction
Lecture 229 Product Controller Get All Action
Lecture 230 API Call debugging
Lecture 231 Display all products
Lecture 232 Create product
Lecture 233 Update product
Lecture 234 Delete product
Section 23: OLD COURSE - Identity Server (Will be removed in Nov 2023)
Lecture 235 Introduction
Lecture 236 OAuth2 and OpenID Connect
Lecture 237 Identity Server Introduction
Lecture 238 Duende Server
Lecture 239 V6 Duende Server
Lecture 240 Integrate QuickStart in Identity Server Service
Lecture 241 Nullable Update
Lecture 242 Nuget Packages for Identity Server
Lecture 243 DbContext for Identity Server
Lecture 244 Configuring APIScope Resource and Clients for Identity Server
Lecture 245 Configuring Clients in Identity Server
Lecture 246 Configure and run Identity Server
Lecture 247 Seed Users
Lecture 248 Secure Product API
Lecture 249 Setup Main Project to use Identity Server
Lecture 250 Login Registration Redirection
Lecture 251 Login in Action
Lecture 252 Register User From UI
Lecture 253 Token Inspection
Lecture 254 Passing custom claims
Lecture 255 View Modified Token
Lecture 256 Pass Token and perform operations
Lecture 257 Request a new course?
Section 24: OLD COURSE - Home and Details (Will be removed in Nov 2023)
Lecture 258 Introduction
Lecture 259 Create Index Action Method
Lecture 260 Index View Home Controller
Lecture 261 Details Get Action Method
Lecture 262 Details View
Section 25: OLD COURSE - Shopping Cart API Service(Will be removed in Nov 2023)
Lecture 263 Introduction
Lecture 264 Create Shopping Cart API
Lecture 265 Nullable Update
Lecture 266 NuGet package for Shopping Cart API
Lecture 267 Setup startup class file for shopping cart
Lecture 268 Entity Models for Shopping Cart API
Lecture 269 Create DTO's and push Models to Shopping Cart Database
Lecture 270 Mapping Configuration for Shopping Cart
Lecture 271 Cart Repository Interface for Shopping Cart API
Lecture 272 Add to Shopping Cart Repository Method
Lecture 273 Update Shopping Cart Repository Method
Lecture 274 Implement Cart Repository Get and Remove
Lecture 275 Cart Controller for API Endpoints
Section 26: OLD COURSE - Consume Shopping Cart API Service (Will be removed in Nov 2023)
Lecture 276 Introduction
Lecture 277 Create models for Shopping Cart API
Lecture 278 Define cart service interface
Lecture 279 Configure Cart Service
Lecture 280 Details Post Action Method
Lecture 281 Demo - Add Items to Cart
Section 27: OLD COURSE - Shopping Cart UI (Will be removed in Nov 2023)
Lecture 282 Introduction
Lecture 283 Add cart controller
Lecture 284 Methods to load shopping cart
Lecture 285 Debugging API call to shopping cart
Lecture 286 Shopping cart UI
Lecture 287 Remove items from cart
Section 28: OLD COURSE - Coupon API Service(Will be removed in Nov 2023)
Lecture 288 Introduction
Lecture 289 2 Create Coupon Project and Add NuGet Packages
Lecture 290 Create coupon API project
Lecture 291 Nullable Update
Lecture 292 Coupon models and DTO's
Lecture 293 Coupon repository
Lecture 294 Coupon controller
Section 29: OLD COURSE - Consume Coupon API(Will be removed in Nov 2023)
Lecture 295 Introduction
Lecture 296 Configure Shopping Cart API with new methods
Lecture 297 Logic for Apply or Remove Coupon in View
Lecture 298 Cart Controller and Service for Applying or Removing Coupon
Lecture 299 Demo - Apply or Remove Coupon
Lecture 300 Configure Cart Service In Main Project
Lecture 301 Demo - Calling Coupon Microservice
Lecture 302 Checkout UI
Lecture 303 DateTimePicker
Section 30: OLD COURSE - Checkout Functionality(Will be removed in Nov 2023)
Lecture 304 Introduction
Lecture 305 Checkout Message
Lecture 306 Checkout Method in Cart Service
Lecture 307 Checkout Post Action
Lecture 308 Demo - Checkout Header Dto
Lecture 309 Async Await is not Async Communication in the project
Lecture 310 Synchronous vs Asynchronous communication
Section 31: OLD COURSE - Azure Service Bus(Will be removed in Nov 2023)
Lecture 311 Introduction
Lecture 312 Azure Service Bus Overview
Lecture 313 Create Azure Service Bus with topic and subscription
Lecture 314 Message Bus Interface
Lecture 315 Message Bus Sender Implementation
Lecture 316 Send Message to Topic
Lecture 317 Upgrade to Azure Messaging ServiceBus
Section 32: OLD COURSE - Order API(Will be removed in Nov 2023)
Lecture 318 Introduction
Lecture 319 Create Project
Lecture 320 Nullable Update
Lecture 321 Adding Models for Order API
Lecture 322 Startup file and Migrations
Lecture 323 Order Repository Interface
Lecture 324 Implement Order Repository
Lecture 325 Configure DbContext for Order Repository
Lecture 326 Create Models for Azure Messaging
Lecture 327 Process Checkout Message and Create Order Details in Database
Lecture 328 Setting up Constants
Lecture 329 Create Service Bus Processor
Lecture 330 Setup Auto Start and Stop for Service Bus Consumer
Lecture 331 Demo Receive Message
Section 33: OLD COURSE - Sync Microservice Communication(Will be removed in Nov 2023)
Lecture 332 Introduction
Lecture 333 Create Coupon Repository Interface
Lecture 334 Implement Coupon Repository
Lecture 335 Configure Start up file for Coupon Repository
Lecture 336 Check for coupon changes
Lecture 337 Demo - Synchronous Communication and Alerts Display
Lecture 338 Synchronous Communication scenario
Section 34: OLD COURSE - Payments(Will be removed in Nov 2023)
Lecture 339 Introduction
Lecture 340 Create Payment Processor Class library
Lecture 341 Payment flow
Lecture 342 Payment Status Models
Lecture 343 Publish Payment Message
Lecture 344 Demo - View Message for Payment Request
Lecture 345 Payment API to consume message
Lecture 346 Payment API Azure Service Bus Consumer
Lecture 347 Demo - Consume Payment Processing
Lecture 348 Demo - Consume Payment Status
Lecture 349 Demo - Complete Flow
Section 35: OLD COURSE - Queue(Will be removed in Nov 2023)
Lecture 350 Introduction
Lecture 351 Use Queue to forward message
Lecture 352 Use Queue for checkout Message
Lecture 353 Add Email Microservice
Lecture 354 Setup Email Service Project Part 1
Lecture 355 Setup Email Service Project Part 2
Lecture 356 Azure Consumer Bus for Email Service
Lecture 357 Multiple Subscribers
Section 36: OLD COURSE - Ocelot(Will be removed in Nov 2023)
Lecture 358 Introduction
Lecture 359 Create Project
Lecture 360 Add Ocelot to the Gateway
Lecture 361 Use Ocelot to retrieve all products
Lecture 362 Ocelot setup for products API
Lecture 363 Ocelot for other endpoints
Section 37: OLD COURSE - RabbitMQ(Will be removed in Nov 2023)
Lecture 364 Introduction
Lecture 365 Exchange Type
Lecture 366 Queues
Lecture 367 Install RabbitMQ
Lecture 368 Add RabbitMQ Nuget to Project
Lecture 369 Implement RabbitMQ Cart Message Sender
Lecture 370 RabbitMQ Send Checkout Message to Queue
Lecture 371 Setup RabbitMQ Consumer Part 1
Lecture 372 Setup RabbitMQ Consumer Part 2
Lecture 373 Demo - Consumer RabbitMQ
Lecture 374 - Optimize RabbitMQSender
Lecture 375 Publish message from Order API
Lecture 376 Consume message from Order API
Lecture 377 Publish to Fanout
Lecture 378 RabbitMQPaymentMessageSender
Lecture 379 Fanout Subscription Setup
Lecture 380 Demo - Fanout
Lecture 381 Direct Exchange Rabbit MQ Sender
Lecture 382 Demo - Direct Message
Students looking to explore Microservices with .NET Core,Architect microservices the right way,Students looking to learn communications with Azure Service Bus,Students looking to learn the basics of Identity Server