What you'll learn
- What Webhooks are and how to build them using C# and .NET 5
- How to build REST APIs using C# and .NET 5
- Use JavaScript (and "fetch") to make API Calls
- How to create multiple HttpClients using HttpClient Factory in .NET
- What RabbitMQ is and how you can use it to enhance your solutions
- How to run SQL Server and RabbitMQ Servers with Docker Compose
- How to add Dependency Injection to a basic .NET Console app
- Automapper and Data Transfer Objects
Requirements
- Working understanding of C# & .NET
- Exposure to building REST APIs with C# & .NET (students can take my free course on YouTube)
Description
In this hands-on, "no fluff / no filler" course we take a practical approach to building a working solution that uses Webhooks. We'll cover some theory to start, but very quickly we jump into the practical step by step solution build which forms the vast majority of the course.
During the build, we will create 3 separate .NET Projects to simulate a fictional airline and its travel-agent customers. This approach will give students a real-world grounding in the use of webhooks and the value they bring to industry. The projects we build are:
Airline Web
Webhook Registration REST API
Flight Details REST API - used to trigger webhook by publishing to RabbitMQ message bus
Simple HTML / JavaScript / Bootstrap Web Client to make webhook registration API calls
Airline Send Agent
Stand alone "agent" used to send webhooks "en-mass"
Dependency Injection enabled
RabbitMQ Subscriber / Consumer with event based message delivery
Uses HttpClient and HttpClientFactory
Travel Agent Web
Simple Webhook POST Endpoint
Uses SQL Server backend to retrieve webhook "secret" to authenticate webhooks
We also use Docker Compose to set up and run following solution fabric:
RabbitMQ Server
Microsoft SQL Server
Students should be aware that we use VSCode as the development tool of choice, so students wanting to learn with Visual Studio should consider this carefully before purchasing.
Source Code is downloadable as a Lecture Resource.
Slideware is downloadable as a Lecture Resource
Who this course is for:
- Students interested in learning more about what webhooks are, why you'd use them and how to start building them.
Instructor
Les is a veteran of the IT industry with over 20 years experience in both engineering and leadership roles. He as a passion for APIs, solutions that add value and of course .NET.
Les has a sizable following on YouTube where he loves to talk about and teach all things .NET. He has also recently published his first book, the Complete ASP.NET 3 API Tutorial.