This is an ASP.NET Web API project built with .NET 6.0, designed for managing a car marketplace. The API provides various functionalities for users and admins, including user authentication, car management, and image uploads.
This is the Frontend of this API: https://github.com/aleksandromilenkov/CarSellersClient
-
User Management
- Register new users
- Login and logout functionality
- Password reset and recovery
-
Car Management
- CRUD operations for users, cars, companies, car models and manufacturers
- Admin users can edit and delete cars, companies, manufacturers and car models
- Regular users can add or remove cars from their favorites
- Search for cars without logging in
-
Image Upload
- Supports image uploads for users, cars, and companies
- Framework: .NET 6.0
- Database: Microsoft SQL Server
- Packages:
- AccountController: Manages user registration, login, logout, and password recovery.
- CarController: Handles CRUD operations for cars.
- ManufacturerController: Handles CRUD operations manufacturers' data.
- CompanyController: Handles CRUD operations for company-related data.
- FavoriteCarsController: Manages users' favorite cars.
- CarModelController: Manages car model data.
- .NET SDK 6.0 or higher
- SQL Server
-
Clone the repository:
git clone https://your-repo-url.git cd your-repo-folder ### Installation
-
Restore the packages:
git clone https://your-repo-url.git cd your-repo-folder
-
Update the database connection string in your appsettings.json file
-
Apply the migrations:
dotnet ef database update
-
Run the application:
dotnet run
The API is documented using Swagger. You can access the documentation at:
http://localhost:5000/swagger
### Contributing
If you'd like to contribute to this project, please fork the repository and submit a pull request with your changes.