/GameSpend

Track and control your video game spending effortlessly with GameSpend, the ultimate spending tracker designed for gamers. Built on a robust ASP.NET Core REST API, GameSpend offers seamless and secure financial tracking to help you stay on top of your gaming expenses

Primary LanguageC#

GameSpend API

GameSpend is a video game spending tracker application designed to help you manage and control your gaming expenses. Built with ASP.NET Core, GameSpend uses Entity Framework to interact with a SQLite database, ensuring a robust and efficient data management system.

Features

  • Add games along with their prices and release dates
  • Perform CRUD (Create, Read, Update, Delete) operations on game records
  • Secure data storage

Technologies Used

  • ASP.NET Core
  • Entity Framework Core
  • SQLite
  • dotnet CLI

Getting Started

Prerequisites

Ensure you have the following installed:

Installation

  1. Clone the repository:

    git clone https://github.com/HarshMN2345/GameSpend.git
    cd GameSpend

dotnet restore dotnet ef database update dotnet run

Testing:-

GET http://localhost:5239/

GET http://localhost:5239/games

DELETE http://localhost:5239/games/12

GET http://localhost:5239/games/10

POST http://localhost:5239/games Content-Type: application/json

{
"name": "Batman",
"GenreId":4,
"price": 29,
"releaseDate": "2017-12-03"
}

PUT http://localhost:5239/games/10 Content-Type: application/json

{
"name": "Injustice god among us",
"GenreId": "1",
"price": 29,
"releaseDate": "2012-12-03"
}

Project Structure

  • Controllers/: Contains API controllers to handle HTTP requests and responses.
  • DTOs/: Contains Data Transfer Objects used for transferring data between layers.
  • Entities/: Contains entity models representing the database schema.
  • Mappings/: Contains AutoMapper profiles for mapping between DTOs and entities.
  • Data/: Contains the DbContext class for Entity Framework.
  • Migrations/: Contains database migration files generated by Entity Framework.
  • Properties/: Contains project configuration files.