Web API Project Address Book with source code in GitHub | REST APIs | C# | Web API Best Practices

Published: 03 October 2023
on channel: DK Programming
826
23

In this video we first build a simple fully functioning Web API project Address Book. After that, we are slowly making it better by adding Services, DTOs (Data Transfer Objects), Interfaces, Dependency Injections, Data Validation and Asynchronous Programming.

Links used in this video:

Visual Studio Downloads:
https://visualstudio.microsoft.com/do...

Controller action return types in ASP.NET Core web API:
https://learn.microsoft.com/en-us/asp...

Interfaces:
https://learn.microsoft.com/en-us/dot...
https://www.w3schools.com/cs/cs_inter...

Model validation in ASP.NET:
https://learn.microsoft.com/en-us/asp...

Data Transfer Objects (DTOs)
https://learn.microsoft.com/en-us/asp...

Asynchronous programming with async and await:
https://learn.microsoft.com/en-us/dot...

GitHub AddressBookWebAPI repo:
https://github.com/katkovd73/AddressB...

Timeline:
0:00 Introduction
2:05 Swagger
4:30 Web API project folders and files structure
5:38 Adding controller
6:30 Configuring endpoints
10:25 AllContacts() - GET
11:37 GetById() - GET
13:06 CreateContact() - POST
14:10 UpdateContact() - PUT
15:27 DeleteContact() - DELETE
16:16 Testing endpoints with Swagger
17:57 Fat controllers. Moving logic to a service class.
28:39 Dependency Injection
37:30 Singleton vs Scoped vs Transient
41:25 Interfaces
48:29 Dependency Injection with Interfaces
50:38 Loose coupling
51:01 DTOs (Data Transfer Objects)
59:58 Data Validation
1:00:01 Built-in validation attributes
1:05:38 Asynchronous programming with async and await


Watch video Web API Project Address Book with source code in GitHub | REST APIs | C# | Web API Best Practices online without registration, duration hours minute second in high quality. This video was added by user DK Programming 03 October 2023, don't forget to share it with your friends and acquaintances, it has been viewed on our site 826 once and liked it 23 people.