REST service based on ASP.NET Core Web API, Entity Framework Core and SQL Server that holds news.
- ASP.NET Core MVC
- Xamarin Android
- GET /api/news – returns all news ordered by publish date.
- POST /api/news – creates a news item by given title, content and publish date.
- PUT /api/news/{id} – updates an existing news item by given id (given in the request URL) and title, content and publish date.
- DELETE /api/news/{id} – deletes an existing news item by given id.
- AutoMapper
- EntityFramework Core with SQL Server and ASP.NET Identity
- JWT authentication/authorization
- File logging with Serilog
- Stylecop
- Neat folder structure
├───src
│ ├───configuration
│ └───server
│ ├───News.Api
│ ├───News.Business
│ ├───News.Core
│ ├───News.Data
│ └───News.Data.EntityFramework
└───tests
└───News.Business.Tests
- Swagger UI + Fully Documented Controllers
- Global Model Errors Handler
- Global Environment-Dependent Exception Handler
Development
Production
- Neatly organized solution structure
- Thin Controllers
- Robust service layer using the Either monad.
- Safe query string parameter model binding using the Option monad.
- xUnit
- Autofixture
- Moq
- Shouldly
- Arrange Act Assert Pattern