contoso-university icon indicating copy to clipboard operation
contoso-university copied to clipboard

Contoso University demo using asp net core and related technologies

Contoso University Build Status

Contoso University is a place for learning AspNetCore and related technologies. This demo application is an amalgamation of smaller demo applications found in tutorials at AspNetCore docs. The tutorials are great at demonstrating isolated concepts, but issues surfaces when applying these concepts/techniques in a larger context. The purpose of this demo application is to apply concepts/techniques learned from those tutorial into a single domain (i.e. university).

ContosoUniversity.Web

  • Traditional Web App using MVC + Razor Pages
  • Demo

ContosoUniversity.Api

  • Traditional Rest Api
  • Demo
  • Generate JWT Token at http://contoso-university-web.adrianlimon.com/api/token to access secure api content. Requires registering via Web App.

Testing

  • Unit Testing using Moq and xUnit
  • Integration Testing using TestHost and InMemoryDatabase
  • UI Testing using Selenium

Security

  • using Identity 2.0
  • Confirm Email using SendGrid
  • Confirm Phone using Twilio
  • Two-Factor Authentication - see tutorial
  • OAuth 2 - Enable Google & Facebook logins
  • JWT (Json Web Token) - use to access secure API

Technologies

  • ASP.NET Core 2.0
  • Asp.Net Core Mvc 2.0 / Razor 2.0
  • Entity Framework Core 2.0 / Identity 2.0
  • Moq
  • xUnit
  • Twilio
  • SendGrid

Design Patterns