
Begin your microservices journey from scratch, learning with .NET Core REST APIs to deliver microservices for a local desktop application.
Choose and install Visual Studio 2022 Community Edition and the latest .NET; ensure you have three to six months of RESTful API experience to prepare for microservices with .NET Core.
Learn microservices fundamentals, set up projects, and build vehicle, customer, and reservations microservices, using Azure Service Bus for communication and an API gateway.
Understand how a monolithic application combines the database, client UI, and server-side logic into one unit, and why tightly coupled components require full redeployments, motivating microservices.
Explore microservices architecture, where autonomous services run independently with their own data stores. Contrast this with monolithic designs, and see how the user interface, business logic, and data layers differ.
Learn how microservices communicate, using synchronous internal calls for inventory and asynchronous external messaging via a message broker to coordinate orders, payments, and emails in a decoupled e-commerce app.
Compare microservices with monolithic apps, including deployment differences and scalability. Discuss platform independence and language choice, and advise when to use microservices for complex systems like e-commerce or Netflix.
Design three microservices for vehicle data, customer data, and reservations data using .NET Core, with a mobile app consuming them and admin emailing customers via Azure Service Bus.
Create a multi-project microservices solution in Visual Studio 2022, add vehicle API, customers API, and reservations API, and enable swagger OpenAPI with controllers.
Install new nuget packages across the three microservice projects, including entity framework, sql server database connection, and migration packages, using manage nuget packages for solution.
Explore building a vehicles microservice with get vehicles, get vehicle by id, add vehicle, update vehicle, and delete vehicle. The course focuses on microservices, not mobile or web applications.
Create a vehicle model in the vehicle microservice by adding a models folder and a C# class named Rachel with key properties: id, name, price, displacement, max speed, and dimensions.
Create a DbContext class in a data folder to bridge the model and database, map a DbSet for the legal model, and configure SQL Server with OnConfiguring.
Create and apply migrations for the vehicle microservice via the package manager console, add the initial create migration, and run update-database to build the database and tables in SQL Server.
Design and define a vehicle service interface using the repository pattern, outlining asynchronous methods to get all vehicles, get by id, add, update, and delete vehicles.
Implement the vehicle service from the vehicle interface using an EF Core DbContext. Retrieve all vehicles and support adding, updating, deleting, and finding by id with async methods and SaveChanges.
Learn how to implement dependency injection and an IOC container in the Dorton core project, wiring the vehicle service through its interface and avoiding concrete implementations.
Add a vehicles controller using read/write actions template, inject the vehicle interface into its constructor, and implement async get, get by id, post, put, and delete methods via vehicle service.
Learn to run and test a vehicle microservice built on .NET Core by executing post, get, update, and delete operations via the API to manage vehicle data.
Create a customers microservice centered on a single post method to add customers, while outlining optional methods to get all, get by id, update, and delete customers.
Create a customer model with id, name, email, and phone; replicate vehicle data and link via vehicle id to a vehicle class; add a legal class with auto-generated keys.
Create a DbContext in the customers microservice to bridge customer and vehicle models, add DbSet properties, and configure the connection string to the database.
Enable migrations in the customer microservice by using the package manager console to run add-migration and update-database, creating the database and tables for customers and vehicles in SQL Server.
Create a customer service interface in a new interfaces folder, define a method to add a customer, and wire it to the models namespace for data handling.
Create a customer service in a .NET Core microservice, implementing the customer interface with a context to manage vehicles and customers, using async logic to avoid primary key conflicts.
Learn extension methods and dependency injection with the built-in IOC container to register a customer interface and customer service, creating new service instances per scope.
Learn to wire a customer controller in net core by injecting the customer service interface via constructor, exposing an async post action to add a customer and test the API.
Run the customer microservice with vehicle service using multiple startup projects, perform get and post requests to book a test drive, and verify records in the customers and legal tables.
Learn to use the Azure service bus, a cloud messaging service and enterprise broker with queues and topics to connect applications and exchange messages between services.
Set up an Azure service bus by creating a resource group and a unique namespace, then choose the basic plan to create a queue with 14 days before removal.
Install the azure dot messaging service bus package and configure the connection string and queue name. Send a json-serialized customer object to the asia service bus queue.
Learn to build a reservations microservice with two methods: get reservations and update email status; process data from Azure Service Bus, store in a database, and send confirmations.
Create model classes for the reservations microservice, map properties from the Azure Service Bus queue, and add a primary key to id plus an IsEmailSent flag.
Copy the existing DbContext into reservations microservice and add DbSet properties for Reservation and Vehicle. Configure the connection as 'reservation API DB' in OnConfiguring and prepare migrations for SQL Server.
Learn to add and apply migrations in the reservation microservice, use the package manager console, and update the database to create locals and reservations tables.
Create interfaces folder and define a reservation interface with methods to get reservations from Azure service bus queue and to update mail status and send confirmation emails for test-drive customers.
Implement the reservations service in a .NET Core microservice, defining get reservations and update mail status methods, using an EF context to save data and SMTP to send confirmation emails.
Learn to use the built-in IOC container in the dockworker project by registering the reservation service interface with AddScoped, creating a new instance per scope.
Create a reservations controller with a reservation service, exposing get for listing reservations and put for updating status and emailing customers, all via async calls.
Install the Azure messaging service bus package in the reservation project, then fetch data from the Azure Service Bus queue in the next lesson.
Fetch and hydrate data from an Azure Service Bus queue, convert JSON payloads to C# objects, persist to the reservations table, and complete messages to remove them from the queue.
Run the reservations microservice to verify end-to-end data flow from the Azure Service Bus, calling the get reservations endpoint and updating mail status to send a confirmation email.
Explore how an api gateway sits between clients and microservices, enabling protection with rate limiting and load balancing, and routing requests to services like vehicles.
Configure a net core api gateway using ocelot, install the ocelot package, configure the program with ocelot middleware, and prepare to map routes for the api gateway.
Configure routes in the API gateway using Ocelot to map upstream client requests to downstream microservices, defining endpoints like /api/vehicles, /api/customers, and /api/reservations.
Test microservices via api gateway by running multiple projects, use the gateway to access endpoints, and use Postman to test non-documented endpoints such as post and delete.
Welcome to the Real World Microservice course with .NET Core.
The main focus of this course is on the Microservices. If you have no prior experience of Microservices then this course is a perfect jumpstart for you. But keep in mind to complete this Microservices course you must have a knowledge of Rest Api's with .Net Core .
So if you're familiar with C# , Asp.Net Core and Entity Framework Or if you want to create the Microservices with your favorite .Net Core framework then this is the right course for you.
If you don't have any idea about Microservices then don't worry because in this course we'll cover all the Microservices concepts from absolute beginning.
By getting this course, you can be rest assured that the course is carefully thought out and edited. And I'm always happy to make the helpful content for the students.
So by the end of the course, you'll completely understand:
How to create a complete real world Microservices project with .Net Core via Entity Framework Code First Approach with all the advanced functions.
Create Vehicles Microservice
Create Customers Microservice
Send data to Azure Message Service Bus
Create Reservations Microservice
Fetch Data From Azure Service Bus
Api Gateway
This is not a short course this is a complete guide to make real world project with Microservices from start to end. So if you're a busy kind of developer and wanna learn things quickly from scratch then take this course.