Skip to content

A Visual Studio extension that provides a robust and maintainable setup for a .NET Core API.

Notifications You must be signed in to change notification settings

dnikolovv/devadventures-net-core-template

Repository files navigation

This template is available in the Visual Studio Marketplace. Also make sure to check out the sample RealWorld app.

After installing the VSIX you will see the template available under Visual C#:

template-in-vs

To get familiar with the Maybe and Either monads you can take a look at the introductory Option article, real life examples of Either in C# and the template introductory article.


Features

Web API

  • AutoMapper
  • EntityFramework Core with SQL Server and ASP.NET Identity
  • JWT authentication/authorization
  • File logging with Serilog
  • Stylecop
  • Neat folder structure
├───src
│   ├───configuration
│   └───server
│       ├───MyProject.Api
│       ├───MyProject.Business
│       ├───MyProject.Core
│       ├───MyProject.Data
│       └───MyProject.Data.EntityFramework
└───tests
    └───MyProject.Business.Tests

  • Swagger UI + Fully Documented Controllers

swagger-ui

  • Global Model Errors Handler

model-errors

  • Global Environment-Dependent Exception Handler
    Development
    exception-development
    Production
    enter image description here
  • Neatly organized solution structure
    solution-structure
  • Thin Controllers
    thin-controllers
  • Robust service layer using the Either monad.
    either-monad
  • Safe query string parameter model binding using the Option monad.
    optional-binding

Test Suite

  • xUnit
  • Autofixture
  • Moq
  • Shouldly
  • Arrange Act Assert Pattern

test-suite

About

A Visual Studio extension that provides a robust and maintainable setup for a .NET Core API.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages