Skip to content
Simple RESTful API built with ASP.NET Core 2.2 to show how to create RESTful services using a decoupled, maintainable architecture.
C#
Branch: master
Clone or download
Latest commit 3ebd540 Aug 11, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
images Updated documentation Jun 19, 2019
src/Supermarket.API Refactor BaseResponse to use generic resource type Aug 3, 2019
.gitignore Refactored code Feb 4, 2019
LICENSE Refactored code Feb 4, 2019
README.md

README.md

Supermarket API

Simple RESTful API built with ASP.NET Core 2.2 to show how to create RESTful services using a decoupled, maintainable architecture.

Changes list

Some changes were made to the code presented at the tutorial published on Medium and freeCodeCamp, to make the API code cleaner and to add functionalities that developers may find useful.

If you want to download the original code showed on the tutorial, download the 1.0.0 tag.

  • 1.2.1 [August 11, 2019]

    • Changed BaseResponse to use generics as a way to simplify responses (see #3).
  • 1.2.0 [July 15, 2019]

    • Changed /api/products endpoint to allow pagination (see #1).
  • 1.1.0 [June 18, 2019]

    • Added Swagger documentation through Swashbuckle;
    • Added cache through native IMemoryCache;
    • Changed products listing to allow filtering by category ID, to show how to perform specific queries with EF Core;
    • Changed ModelState validation to use ApiController attribute and InvalidResponseFactory in Startup.
  • 1.0.0 [February 4, 2019]

Frameworks and Libraries

How to Test

First, install .NET Core 2.2. Then, open the terminal or command prompt at the API root path (/src/Supermarket.API/) and run the following commands, in sequence:

dotnet restore
dotnet run

Navigate to https://localhost:5001/api/categories to check if the API is working. If you see a HTTPS security error, just add an exception to see the results.

Navigate to https://localhost:5001/swagger to check the API documentation.

API Documentation

To test all endpoints, you'll need to use a software such as Postman.

You can’t perform that action at this time.