Giter Club home page Giter Club logo

dotnet-api-rest-boilerplate's Introduction

dotnet-api-rest-boilerplate

Feel free to use this project as a boilerplate for your WebApi projects

How to use

Technologies used

  • Unity is an IoC container that helps you to make abstraction between your repository implementation and your controlers. Using interfaces is also good because it helps you to test your controlers by faking the repo behaviour
  • Swagger helps you to expose your API's routes. I use it for tests, feel free to remove it in production.

Data Access Layer

  • Dapper is a micro ORM that helps you to access your database
  • I chose SQLite to make the project actually work, but you probably want to change that

Unit tests

  • Nunit is the unit test framework I used here
  • Moq helps you to fake your interface implementations for your controler

Logging

  • I use Nlog as logging framework.
  • As you will see, controlers also depends on a ILogging interface. As the repo, it is injected by Unity, but I used an extension that create the logger depending on the class name
  • The nlog.config probably don't suits your needs

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.