are used to build applications
allow applications to both be built and run
for running the CLI commands as well as running applications
Explain project systems, project.json, why dropping it;
And that it is ‘either / or ‘
Visual Studio 2015
Project.json
Visual Studio 2017
.Csproj
dotnet.exe
dotnet new console
dotnet restore
dotnet build --output bin (build met --output /bin plaatst dll in c:\bin !!! Zonder (back)slash gaat het goed)
dotnet bin/project.dll
Ook mogelijk: run csproj
Scaffolding
Setup in project / DI
In-Memory testing
Exception handler first: catches all exceptions in middleware later
Then static files: returns static files and doesn’t process further (short-circuits)
TIP: Static Files doesn’t do authorization checks! Find more info online
Identity middleware performs authentication. No short-circuit, since no authorization!
1 SETUP OF ASP.NET
2 ADD SWAGGER
3 LOGGING
4 CONFIGURATION
5 CUSTOM MIDDLEWARE
6 DEPENDENCY INJECTION
7 EF DI
8 SHOW ANGULAR(BONUS)
Large part of Web API DEMO applies
Program.cs
Startup.cs
Dependencies
Wwwroot
Views (Razor)
TagHelpers
Custom Taghelpers
_ViewImports.cshtml
Bower
Bundling & Minification (incl. environments & fallback)
Infographic van juni 2016
Specific implementations & conditional compilation (bias towards the latter)
Windows groter: wel Windows specifieke implementaties (registry) nog geen unix specifieke implementatie
CoreCLR == platform specific (C/C++, so by construction)
System.IO & Security.Cryptography.Algoritms == platform specific, slightly different implementations
System.Collections & System.Linq are platform-neutral