Ett RESTful API för att hantera användarprofilinformation. Byggt med .NET och uppdelat i tre lager: Presentation (Controller), Business (Service), och Data (Repository).
- Presentation
- Controllers
- UserController.cs
- Business
- Services
- UserService.cs
- Interfaces
- IUserService.cs
- Models
- UserRegistrationForm.cs
- UserUpdateForm.cs
- ResponseResult.cs
- Domain
- Models
UserUpdateForm.cs
- Data
- Entities
- UserEntity.cs
- Interfaces
- IUserRepository.cs
| Funktion | HTTP-Verb | Route | Beskrivning |
|---|---|---|---|
| Lägg till användare | POST | /api/user/add |
Registrerar ny användare |
| Hämta användare | GET | /api/user/get |
Hämtar information baserat på ID |
| Uppdatera användare | POST | /api/user/update |
Uppdaterar användarprofil |
| Radera användare | POST | /api/user/delete |
Raderar användare |
Body:
{
"FirstName": "Anna",
"LastName": "Andersson",
"Email": "anna@example.com",
"Password": "SäkertLösenord123"
}Respons:
{
"succeeded": true,
"message": "Profile information was created successfully.",
"statusCode": 201
}Respons:
{
"succeeded": true,
"statusCode": 200,
"result": {
"userId": "123",
"firstName": "Anna",
"lastName": "Andersson",
"email": "anna@example.com"
}
}Body:
{
"FirstName": "Anna",
"LastName": "Andersson",
"Email": "anna.ny@example.com"
}Respons:
{
"succeeded": true,
"message": "User information updated successfully.",
"statusCode": 200
}Respons:
{
"succeeded": true,
"message": "User information deleted successfully.",
"statusCode": 200
}UserServiceinnehåller affärslogiken och anroparIUserRepositoryför databasoperationer.UserControllerhanterar HTTP-anrop och validerar inkommande data.ResponseResult<T>används för att konsekvent strukturera svar.UserFactoryanvänds för att mappa mellan formulär/entiteter och domänmodeller.
- .NET 9
- Swagger (Swashbuckle) installerat i projektet
Länk till Swagger api (https://profileserviceprovider.azurewebsites.net)
Ta ner ProfileServiceProvider på din dator. Skapa en ny appsettings.json. Skapa sedan en lokal databas och lägg till sökvägen till den i appsettings.json. Starta ProfileServiceProvider lokalt och Swagger ska startas automatiskt.
För att skydda API:t används en API-nyckel som måste skickas med i varje förfrågan via headern X-API-KEY.
Öppna filen appsettings.json eller appsettings.Development.json och lägg till följande:
"ApiKeys": {
"StandardApiKey": "din-api-nyckel-här"
}