Перейти к содержимому

RaceDay api proj

Kid Culture

0:00 / 0:00

RaceDay api proj

1 просмотр · 11 дн. назад
Kid Culture
1 просмотр · 11 дн. назад
RaceDAY API – Programming Assignment Part 2 | C# ASP.NET Core Web API In this video, I demonstrate my RaceDAY API project developed using C#, ASP.NET Core Web API and .NET 8 in Visual Studio. I begin by explaining the project structure, database connection, Entity Framework Core, models, and ApplicationDBContext. I then demonstrate how the database is connected to the API and how the different entities work together. Next, I demonstrate user registration and login for both Organisers and Participants. I explain password hashing, JWT authentication, and role-based authorization, showing how the API protects endpoints and prevents users from accessing functionality that does not belong to their role. I then demonstrate the main features of the RaceDAY API, including: *User Authentication:* Registering accounts, logging in, and generating authentication tokens. *User Profiles:* Viewing and updating participant profiles. *Event Management:* Creating, viewing, updating, and deleting events as an Organiser, while allowing the public to view available events. *Category Management:* Creating and managing categories associated with events. *Event Elements:* Managing event elements linked to categories. *Enrolments:* Allowing Participants to enrol in events and view their enrolments, while Organisers can view enrolments for their events. *Race Results:* Allowing Organisers to record finishing times and positions, while Participants can view their own results. *API Testing:* Using Swagger to test endpoints, submit request data, inspect responses, and demonstrate authentication and role restrictions. I also explain the automated testing setup and demonstrate the tests used to check registration, login, authentication, role-based access, and API functionality. Finally, I discuss the GitHub repository and the GitHub Actions workflow for building and testing the project. *Technologies used:* C# ASP.NET Core Web API .NET 8 Entity Framework Core SQL Server JWT Authentication Swagger / OpenAPI xUnit GitHub and GitHub Actions *Project purpose:* The purpose of this project is to demonstrate the development of a database-connected API for managing race events, categories, participant enrolments, and race results while applying authentication, authorization, and software testing principles. This video explains how the different components of the RaceDAY API work together and how the implementation relates to the Programming Assignment Part 2 requirements.