SlideShare a Scribd company logo
Alex Thissen
Lead Consultant Xpirit
ASP.NET 5
Microsoft’s web development platform reimagined
Agenda
• Overview .NET vNext and ASP.NET 5
• Tenets of ASP.NET
• Open source and cross-platform
• Command-line first
• Symmetry
• Modern Web Architecture
• Wrapup
• Summary
• Questions and Answers
An overview
Viewing ASP.NET from above
ASP.NET components
Nothing new here, or is there?
MVC 6
Unified Web Stack
MVC 6
ASP.NET 5 and the Modern Web
A big shift for Microsoft
Choose your editors
and tools
Open Source
with contributions
Cross-Platform
Seamless transition
from on-premises to cloud
Faster development
cycleTotally modular
Fast
Ingredients to the mix
How it all started
Project KatanaOWIN npm NuGet
.NET FX vNext Technology Stack
Host
Mac OS X
Linux
Self
Hosted
“Helios”
IIS
IIS Native ModuleIIS Native Module
CLR Core CLR Mono CLR
.NET Base Class Library
ASP.NET 5
Windows
Cloud/Server optimized
ASP.NET 5 on .NET FX vNext
Full .NET CLR
•Entire API set in
machine wide install
(200 MB)
•Updated with OS
•Ecosystem of existing
packages
•Backward compatibility
•Default for
Visual Studio 2015
projects
Cloud Optimized CLR
•Lean and modular
runtime (11 MB)
•Optimized for server
•Small memory footprint
•Libraries in NuGet
packages
•Framework deployed
with app
•Different versions can
run side-by-side
Mono
•Cross-Platform runtime
for Linux and Mac OS X
•Together with Mono
community
ASP.NET 5.0 ASP.NET 5.0 ASP.NET 5.0
Tenets from ASP.NET team
Command-
line first
• Facilitate cross-
platform
• Visual Studio
2015 for
premium
experience
Symmetry
• Between
command-line
and visual studio
• Between server
and cloud
• It just works by
default in the
cloud and on-
premise
Open source
• All code visible
(even during
development)
• Contributions
from community
Light-weight
and Pay-as-
you-go
• Only include
what you use
Open source
Tap into the community ecosystem
Open sourced parts of .NET
Open sourcing ASP.NET
Find it all here
• github.com/aspnet
• github.com/dotnet/home
Help and feedback
• JabbR:
https://jabbr.net/#rooms/
aspnetvnext
• ASP.NET forums:
http://forums.asp.net
Have a look in the kitchen
.NET Foundation
• Focused on .NET FX
• Apache 2 license mostly
• No platform restrictions
Fostering open development and collaboration
Symmetry
Taking away the differences and embracing choice
DNX - .NET Execution Environment
• Compilation system
• SDK tools (DNVM, DNU)
• Native CLR hosts
Code required to bootstrap and run an application
Goals
• Change code and run
• Expose metadata about the
runtime for others to query
• Create a cached version of
your application's
dependencies ("compilation")
Principles
• NuGet all the things
• There is no such thing as
"design time"
• Dependencies are always
described as what not where
Cross-platform tooling
A warm welcome to MacOS and Linux
Building and running
Choose your own tooling
Web Server
Website
C# Code
(.cs file)
Binary
Roslyn
Command-line first
Offering both a CLI and UI experience
Command-line first
More than just Visual Studio
Text before UI
• Everything from text
files
– Projects
– Configuration
– Preferences and
options
– Launch settings
• JSON is preferred
data format
Return of the text files
New project system
.csproj is gone. Long live project.json
• Independent of Visual Studio
• JSON files instead of VS artefacts
• Every file is relevant
– Unless stated otherwise
• Specific folder structure
• Build for multiple target frameworks
Modern web architecture
Modular, pay as you use, light-weight and fast
NuGet all the things
• NuGet packages are
unit of reference
– Not assemblies
Projects:
• build NuGet packages
• reference NuGet
packages
Simplify dependency management
Runtime loading
• Dependency
resolution rules
• Nearest wins
• Cousin
dependencies
Playing by the rules
Deploying ASP.NET 5 applications
With source code Without source code
XCopy deployment
Global tools
• DNX console applications in a NuGet package
• Installed globally
• Runnable from command line.
Example: User-secret
Assembly Neutral Interfaces
• Allows an interface's identity to not be tied to its assembly
– Interface used as a contract
– No requirement on shared binary asset (compile-time and
run-time)
• Interfaces must be identical
– Exact same types and marked with [AssemblyNeutral]
[AssemblyNeutral]
public interface ILogger
{
void Log(string message);
}
Summary
ASP.NET 5
reimagined
Cross-Platform
CoreCLR
Command-Line
DNX
NuGet
Key takeaways for ASP.NET 5
Your feedback is important!
Scan the QR Code and let us know via the TechDays App.
Laat ons weten wat u van de sessie vindt!
Scan the QR Code via de TechDays App.
Bent u al lid van de Microsot Virtual Academy?! Op MVA kunt u altijd iets
nieuws leren over de laatste technologie van Microsoft. Meld u vandaag aan
op de MVA Stand. MVA biedt 7/24 gratis online training on-demand voor IT-
Professionals en Ontwikkelaars.
ASP.NET 5 - Microsoft's Web development platform reimagined

More Related Content

What's hot

Deploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM TemplatesDeploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM Templates
Pratik Khasnabis
 
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
Betclic Everest Group Tech Team
 
NWJS. Web on desktop
NWJS. Web on desktopNWJS. Web on desktop
NWJS. Web on desktop
Aigars Zeiza
 
The Three Musketeers
The Three MusketeersThe Three Musketeers
The Three Musketeers
Frederic Lemay
 
TechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM Bluemix
Janakiram MSV
 
Docker With Asp.net Core
Docker With Asp.net CoreDocker With Asp.net Core
Docker With Asp.net Core
Fatih Şimşek
 
.Net platform .Net core fundamentals
.Net platform .Net core  fundamentals.Net platform .Net core  fundamentals
.Net platform .Net core fundamentals
Hosein Mansouri
 
ASP.NET Core 1.0 Overview
ASP.NET Core 1.0 OverviewASP.NET Core 1.0 Overview
ASP.NET Core 1.0 Overview
Shahed Chowdhuri
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
Janakiram MSV
 
Microsoft <3 Linux with ASP.NET Core
Microsoft <3 Linux with ASP.NET CoreMicrosoft <3 Linux with ASP.NET Core
Microsoft <3 Linux with ASP.NET Core
John Patrick Oliveros
 
Deploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on AzureDeploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on Azure
Michele Aponte
 
Cross Community CI project
Cross Community CI projectCross Community CI project
Cross Community CI project
Victor Morales
 
.NET Standard - Under the Hood
.NET Standard - Under the Hood.NET Standard - Under the Hood
.NET Standard - Under the Hood
Immo Landwerth
 
Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015
aspyker
 
A brief intro to nodejs
A brief intro to nodejsA brief intro to nodejs
A brief intro to nodejs
Jay Liu
 
Who needs containers in a serverless world
Who needs containers in a serverless worldWho needs containers in a serverless world
Who needs containers in a serverless world
Matthias Luebken
 
Netflix Open Source Meetup Season 3 Episode 2
Netflix Open Source Meetup Season 3 Episode 2Netflix Open Source Meetup Season 3 Episode 2
Netflix Open Source Meetup Season 3 Episode 2
aspyker
 
Microservices and Container Management with NGINX Plus and Mesosphere DC/OS
Microservices and Container Management with NGINX Plus and Mesosphere DC/OSMicroservices and Container Management with NGINX Plus and Mesosphere DC/OS
Microservices and Container Management with NGINX Plus and Mesosphere DC/OS
NGINX, Inc.
 
Don Wibier
Don WibierDon Wibier
Don Wibier
CodeFest
 
Onnx and onnx runtime
Onnx and onnx runtimeOnnx and onnx runtime
Onnx and onnx runtime
Vishwas N
 

What's hot (20)

Deploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM TemplatesDeploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM Templates
 
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
 
NWJS. Web on desktop
NWJS. Web on desktopNWJS. Web on desktop
NWJS. Web on desktop
 
The Three Musketeers
The Three MusketeersThe Three Musketeers
The Three Musketeers
 
TechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM Bluemix
 
Docker With Asp.net Core
Docker With Asp.net CoreDocker With Asp.net Core
Docker With Asp.net Core
 
.Net platform .Net core fundamentals
.Net platform .Net core  fundamentals.Net platform .Net core  fundamentals
.Net platform .Net core fundamentals
 
ASP.NET Core 1.0 Overview
ASP.NET Core 1.0 OverviewASP.NET Core 1.0 Overview
ASP.NET Core 1.0 Overview
 
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhiskTechTalk Webinar Series - Getting Started with Apache OpenWhisk
TechTalk Webinar Series - Getting Started with Apache OpenWhisk
 
Microsoft <3 Linux with ASP.NET Core
Microsoft <3 Linux with ASP.NET CoreMicrosoft <3 Linux with ASP.NET Core
Microsoft <3 Linux with ASP.NET Core
 
Deploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on AzureDeploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on Azure
 
Cross Community CI project
Cross Community CI projectCross Community CI project
Cross Community CI project
 
.NET Standard - Under the Hood
.NET Standard - Under the Hood.NET Standard - Under the Hood
.NET Standard - Under the Hood
 
Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015
 
A brief intro to nodejs
A brief intro to nodejsA brief intro to nodejs
A brief intro to nodejs
 
Who needs containers in a serverless world
Who needs containers in a serverless worldWho needs containers in a serverless world
Who needs containers in a serverless world
 
Netflix Open Source Meetup Season 3 Episode 2
Netflix Open Source Meetup Season 3 Episode 2Netflix Open Source Meetup Season 3 Episode 2
Netflix Open Source Meetup Season 3 Episode 2
 
Microservices and Container Management with NGINX Plus and Mesosphere DC/OS
Microservices and Container Management with NGINX Plus and Mesosphere DC/OSMicroservices and Container Management with NGINX Plus and Mesosphere DC/OS
Microservices and Container Management with NGINX Plus and Mesosphere DC/OS
 
Don Wibier
Don WibierDon Wibier
Don Wibier
 
Onnx and onnx runtime
Onnx and onnx runtimeOnnx and onnx runtime
Onnx and onnx runtime
 

Viewers also liked

M ate3 multiplicacion
M ate3 multiplicacionM ate3 multiplicacion
M ate3 multiplicacion
Lizeth Padilla
 
Padilla sosa lizeth_margarita_tarea6
Padilla sosa lizeth_margarita_tarea6Padilla sosa lizeth_margarita_tarea6
Padilla sosa lizeth_margarita_tarea6
Lizeth Padilla
 
Padilla sosa lizeth_margarita_tarea8
Padilla sosa lizeth_margarita_tarea8Padilla sosa lizeth_margarita_tarea8
Padilla sosa lizeth_margarita_tarea8
Lizeth Padilla
 
Left_362016_MZ_JP_Terremoto
Left_362016_MZ_JP_TerremotoLeft_362016_MZ_JP_Terremoto
Left_362016_MZ_JP_TerremotoMarco Zappa
 
Padilla sosa lizeth_margarita_tarea5
Padilla sosa lizeth_margarita_tarea5Padilla sosa lizeth_margarita_tarea5
Padilla sosa lizeth_margarita_tarea5
Lizeth Padilla
 
Retail Presentation_mobile_customer_connect_Oct2015
Retail Presentation_mobile_customer_connect_Oct2015Retail Presentation_mobile_customer_connect_Oct2015
Retail Presentation_mobile_customer_connect_Oct2015
Natalia Haluszka
 
Padilla sosa lizeth_margarita_tarea10
Padilla sosa lizeth_margarita_tarea10Padilla sosa lizeth_margarita_tarea10
Padilla sosa lizeth_margarita_tarea10
Lizeth Padilla
 
My Teaching Philosophy
My Teaching PhilosophyMy Teaching Philosophy
My Teaching Philosophy
Patricia F. Diaz, PhD
 
Global CINTURY INT Asia World
Global CINTURY INT Asia WorldGlobal CINTURY INT Asia World
Global CINTURY INT Asia World
bisnis terbaru
 
ASP.NET vNext
ASP.NET vNextASP.NET vNext
ASP.NET vNext
Alex Thissen
 
Wowcoin wowdigit presentation
Wowcoin wowdigit presentation Wowcoin wowdigit presentation
Wowcoin wowdigit presentation
bisnis terbaru
 
Pecha kucha
Pecha kuchaPecha kucha
Pecha kucha
crivat442
 
Redes sociales
Redes sociales Redes sociales
Redes sociales
Luis Angel Fuentes Uribe
 
Portfolio of Stained Glass Overlay Work
Portfolio of Stained Glass Overlay WorkPortfolio of Stained Glass Overlay Work
Portfolio of Stained Glass Overlay Work
Patricia F. Diaz, PhD
 

Viewers also liked (14)

M ate3 multiplicacion
M ate3 multiplicacionM ate3 multiplicacion
M ate3 multiplicacion
 
Padilla sosa lizeth_margarita_tarea6
Padilla sosa lizeth_margarita_tarea6Padilla sosa lizeth_margarita_tarea6
Padilla sosa lizeth_margarita_tarea6
 
Padilla sosa lizeth_margarita_tarea8
Padilla sosa lizeth_margarita_tarea8Padilla sosa lizeth_margarita_tarea8
Padilla sosa lizeth_margarita_tarea8
 
Left_362016_MZ_JP_Terremoto
Left_362016_MZ_JP_TerremotoLeft_362016_MZ_JP_Terremoto
Left_362016_MZ_JP_Terremoto
 
Padilla sosa lizeth_margarita_tarea5
Padilla sosa lizeth_margarita_tarea5Padilla sosa lizeth_margarita_tarea5
Padilla sosa lizeth_margarita_tarea5
 
Retail Presentation_mobile_customer_connect_Oct2015
Retail Presentation_mobile_customer_connect_Oct2015Retail Presentation_mobile_customer_connect_Oct2015
Retail Presentation_mobile_customer_connect_Oct2015
 
Padilla sosa lizeth_margarita_tarea10
Padilla sosa lizeth_margarita_tarea10Padilla sosa lizeth_margarita_tarea10
Padilla sosa lizeth_margarita_tarea10
 
My Teaching Philosophy
My Teaching PhilosophyMy Teaching Philosophy
My Teaching Philosophy
 
Global CINTURY INT Asia World
Global CINTURY INT Asia WorldGlobal CINTURY INT Asia World
Global CINTURY INT Asia World
 
ASP.NET vNext
ASP.NET vNextASP.NET vNext
ASP.NET vNext
 
Wowcoin wowdigit presentation
Wowcoin wowdigit presentation Wowcoin wowdigit presentation
Wowcoin wowdigit presentation
 
Pecha kucha
Pecha kuchaPecha kucha
Pecha kucha
 
Redes sociales
Redes sociales Redes sociales
Redes sociales
 
Portfolio of Stained Glass Overlay Work
Portfolio of Stained Glass Overlay WorkPortfolio of Stained Glass Overlay Work
Portfolio of Stained Glass Overlay Work
 

Similar to ASP.NET 5 - Microsoft's Web development platform reimagined

.NET Core: a new .NET Platform
.NET Core: a new .NET Platform.NET Core: a new .NET Platform
.NET Core: a new .NET Platform
Alex Thissen
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
mbaric
 
Unboxing ASP.NET Core
Unboxing ASP.NET CoreUnboxing ASP.NET Core
Unboxing ASP.NET Core
Kevin Leung
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
CodeFest
 
Porting Projects to .NET 5
Porting Projects to .NET 5Porting Projects to .NET 5
Porting Projects to .NET 5
Immo Landwerth
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
Amazon Web Services
 
.Net Core 3.0. What’s inside? Павло Голубович
.Net Core 3.0. What’s inside? Павло Голубович.Net Core 3.0. What’s inside? Павло Голубович
.Net Core 3.0. What’s inside? Павло Голубович
Sigma Software
 
Whats new in .net for 2019
Whats new in .net for 2019Whats new in .net for 2019
Whats new in .net for 2019
Rory Preddy
 
Dotnet on linux
Dotnet on linuxDotnet on linux
Dotnet on linux
Ebram Tharwat
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bits
Ken Cenerelli
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time
Amazon Web Services
 
Net coreandsimplcommerce
Net coreandsimplcommerceNet coreandsimplcommerce
Net coreandsimplcommerce
Thien Nguyen Le Quynh
 
Visual studio 2015 and .net core 5 – get ready to rumble
Visual studio 2015 and .net core 5  – get ready to rumbleVisual studio 2015 and .net core 5  – get ready to rumble
Visual studio 2015 and .net core 5 – get ready to rumble
Tadeusz Balcer
 
Building Modern Web Apps Using ASP.NET 5
Building Modern Web Apps Using ASP.NET 5Building Modern Web Apps Using ASP.NET 5
Building Modern Web Apps Using ASP.NET 5
WinWire Technologies Inc
 
Dot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentalsDot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentals
Lalit Kale
 
Introduction to dot net
Introduction to dot netIntroduction to dot net
Introduction to dot net
QIANG XU
 
NET core 2 e i fratelli
NET core 2 e i fratelliNET core 2 e i fratelli
NET core 2 e i fratelli
Andrea Tosato
 
ASP.NET 5
ASP.NET 5ASP.NET 5
ASP.NET 5
David Voyles
 
Presentation1.pptx
Presentation1.pptxPresentation1.pptx
Presentation1.pptx
SubashiniRathinavel
 
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
Amazon Web Services Korea
 

Similar to ASP.NET 5 - Microsoft's Web development platform reimagined (20)

.NET Core: a new .NET Platform
.NET Core: a new .NET Platform.NET Core: a new .NET Platform
.NET Core: a new .NET Platform
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
 
Unboxing ASP.NET Core
Unboxing ASP.NET CoreUnboxing ASP.NET Core
Unboxing ASP.NET Core
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
 
Porting Projects to .NET 5
Porting Projects to .NET 5Porting Projects to .NET 5
Porting Projects to .NET 5
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
 
.Net Core 3.0. What’s inside? Павло Голубович
.Net Core 3.0. What’s inside? Павло Голубович.Net Core 3.0. What’s inside? Павло Голубович
.Net Core 3.0. What’s inside? Павло Голубович
 
Whats new in .net for 2019
Whats new in .net for 2019Whats new in .net for 2019
Whats new in .net for 2019
 
Dotnet on linux
Dotnet on linuxDotnet on linux
Dotnet on linux
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bits
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time
 
Net coreandsimplcommerce
Net coreandsimplcommerceNet coreandsimplcommerce
Net coreandsimplcommerce
 
Visual studio 2015 and .net core 5 – get ready to rumble
Visual studio 2015 and .net core 5  – get ready to rumbleVisual studio 2015 and .net core 5  – get ready to rumble
Visual studio 2015 and .net core 5 – get ready to rumble
 
Building Modern Web Apps Using ASP.NET 5
Building Modern Web Apps Using ASP.NET 5Building Modern Web Apps Using ASP.NET 5
Building Modern Web Apps Using ASP.NET 5
 
Dot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentalsDot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentals
 
Introduction to dot net
Introduction to dot netIntroduction to dot net
Introduction to dot net
 
NET core 2 e i fratelli
NET core 2 e i fratelliNET core 2 e i fratelli
NET core 2 e i fratelli
 
ASP.NET 5
ASP.NET 5ASP.NET 5
ASP.NET 5
 
Presentation1.pptx
Presentation1.pptxPresentation1.pptx
Presentation1.pptx
 
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
AWS Innovate: Moving Microsoft .Net applications one container at a time - Da...
 

More from Alex Thissen

Go (con)figure - Making sense of .NET configuration
Go (con)figure - Making sense of .NET configurationGo (con)figure - Making sense of .NET configuration
Go (con)figure - Making sense of .NET configuration
Alex Thissen
 
Logging, tracing and metrics: Instrumentation in .NET 5 and Azure
Logging, tracing and metrics: Instrumentation in .NET 5 and AzureLogging, tracing and metrics: Instrumentation in .NET 5 and Azure
Logging, tracing and metrics: Instrumentation in .NET 5 and Azure
Alex Thissen
 
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
Alex Thissen
 
Health monitoring and dependency injection - CNUG November 2019
Health monitoring and dependency injection - CNUG November 2019Health monitoring and dependency injection - CNUG November 2019
Health monitoring and dependency injection - CNUG November 2019
Alex Thissen
 
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Alex Thissen
 
I dont feel so well. Integrating health checks in your .NET Core solutions - ...
I dont feel so well. Integrating health checks in your .NET Core solutions - ...I dont feel so well. Integrating health checks in your .NET Core solutions - ...
I dont feel so well. Integrating health checks in your .NET Core solutions - ...
Alex Thissen
 
It depends: Loving .NET Core dependency injection or not
It depends: Loving .NET Core dependency injection or notIt depends: Loving .NET Core dependency injection or not
It depends: Loving .NET Core dependency injection or not
Alex Thissen
 
Overview of the new .NET Core and .NET Platform Standard
Overview of the new .NET Core and .NET Platform StandardOverview of the new .NET Core and .NET Platform Standard
Overview of the new .NET Core and .NET Platform Standard
Alex Thissen
 
Exploring Microservices in a Microsoft Landscape
Exploring Microservices in a Microsoft LandscapeExploring Microservices in a Microsoft Landscape
Exploring Microservices in a Microsoft Landscape
Alex Thissen
 
How Docker and ASP.NET Core will change the life of a Microsoft developer
How Docker and ASP.NET Core will change the life of a Microsoft developerHow Docker and ASP.NET Core will change the life of a Microsoft developer
How Docker and ASP.NET Core will change the life of a Microsoft developer
Alex Thissen
 
Visual Studio Productivity tips
Visual Studio Productivity tipsVisual Studio Productivity tips
Visual Studio Productivity tips
Alex Thissen
 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscape
Alex Thissen
 
Asynchronous programming in ASP.NET
Asynchronous programming in ASP.NETAsynchronous programming in ASP.NET
Asynchronous programming in ASP.NET
Alex Thissen
 
Visual Studio 2015 experts tips and tricks
Visual Studio 2015 experts tips and tricksVisual Studio 2015 experts tips and tricks
Visual Studio 2015 experts tips and tricks
Alex Thissen
 
MVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming modelMVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming model
Alex Thissen
 
//customer/
//customer///customer/
//customer/
Alex Thissen
 

More from Alex Thissen (16)

Go (con)figure - Making sense of .NET configuration
Go (con)figure - Making sense of .NET configurationGo (con)figure - Making sense of .NET configuration
Go (con)figure - Making sense of .NET configuration
 
Logging, tracing and metrics: Instrumentation in .NET 5 and Azure
Logging, tracing and metrics: Instrumentation in .NET 5 and AzureLogging, tracing and metrics: Instrumentation in .NET 5 and Azure
Logging, tracing and metrics: Instrumentation in .NET 5 and Azure
 
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
Logging tracing and metrics in .NET Core and Azure - dotnetdays 2020
 
Health monitoring and dependency injection - CNUG November 2019
Health monitoring and dependency injection - CNUG November 2019Health monitoring and dependency injection - CNUG November 2019
Health monitoring and dependency injection - CNUG November 2019
 
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
Architecting .NET solutions in a Docker ecosystem - .NET Fest Kyiv 2019
 
I dont feel so well. Integrating health checks in your .NET Core solutions - ...
I dont feel so well. Integrating health checks in your .NET Core solutions - ...I dont feel so well. Integrating health checks in your .NET Core solutions - ...
I dont feel so well. Integrating health checks in your .NET Core solutions - ...
 
It depends: Loving .NET Core dependency injection or not
It depends: Loving .NET Core dependency injection or notIt depends: Loving .NET Core dependency injection or not
It depends: Loving .NET Core dependency injection or not
 
Overview of the new .NET Core and .NET Platform Standard
Overview of the new .NET Core and .NET Platform StandardOverview of the new .NET Core and .NET Platform Standard
Overview of the new .NET Core and .NET Platform Standard
 
Exploring Microservices in a Microsoft Landscape
Exploring Microservices in a Microsoft LandscapeExploring Microservices in a Microsoft Landscape
Exploring Microservices in a Microsoft Landscape
 
How Docker and ASP.NET Core will change the life of a Microsoft developer
How Docker and ASP.NET Core will change the life of a Microsoft developerHow Docker and ASP.NET Core will change the life of a Microsoft developer
How Docker and ASP.NET Core will change the life of a Microsoft developer
 
Visual Studio Productivity tips
Visual Studio Productivity tipsVisual Studio Productivity tips
Visual Studio Productivity tips
 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscape
 
Asynchronous programming in ASP.NET
Asynchronous programming in ASP.NETAsynchronous programming in ASP.NET
Asynchronous programming in ASP.NET
 
Visual Studio 2015 experts tips and tricks
Visual Studio 2015 experts tips and tricksVisual Studio 2015 experts tips and tricks
Visual Studio 2015 experts tips and tricks
 
MVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming modelMVC 6 - the new unified Web programming model
MVC 6 - the new unified Web programming model
 
//customer/
//customer///customer/
//customer/
 

Recently uploaded

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 

Recently uploaded (20)

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 

ASP.NET 5 - Microsoft's Web development platform reimagined

  • 1.
  • 2. Alex Thissen Lead Consultant Xpirit ASP.NET 5 Microsoft’s web development platform reimagined
  • 3. Agenda • Overview .NET vNext and ASP.NET 5 • Tenets of ASP.NET • Open source and cross-platform • Command-line first • Symmetry • Modern Web Architecture • Wrapup • Summary • Questions and Answers
  • 5. ASP.NET components Nothing new here, or is there? MVC 6 Unified Web Stack MVC 6
  • 6. ASP.NET 5 and the Modern Web A big shift for Microsoft Choose your editors and tools Open Source with contributions Cross-Platform Seamless transition from on-premises to cloud Faster development cycleTotally modular Fast
  • 7. Ingredients to the mix How it all started Project KatanaOWIN npm NuGet
  • 8. .NET FX vNext Technology Stack Host Mac OS X Linux Self Hosted “Helios” IIS IIS Native ModuleIIS Native Module CLR Core CLR Mono CLR .NET Base Class Library ASP.NET 5 Windows Cloud/Server optimized
  • 9. ASP.NET 5 on .NET FX vNext Full .NET CLR •Entire API set in machine wide install (200 MB) •Updated with OS •Ecosystem of existing packages •Backward compatibility •Default for Visual Studio 2015 projects Cloud Optimized CLR •Lean and modular runtime (11 MB) •Optimized for server •Small memory footprint •Libraries in NuGet packages •Framework deployed with app •Different versions can run side-by-side Mono •Cross-Platform runtime for Linux and Mac OS X •Together with Mono community ASP.NET 5.0 ASP.NET 5.0 ASP.NET 5.0
  • 10. Tenets from ASP.NET team Command- line first • Facilitate cross- platform • Visual Studio 2015 for premium experience Symmetry • Between command-line and visual studio • Between server and cloud • It just works by default in the cloud and on- premise Open source • All code visible (even during development) • Contributions from community Light-weight and Pay-as- you-go • Only include what you use
  • 11. Open source Tap into the community ecosystem
  • 13. Open sourcing ASP.NET Find it all here • github.com/aspnet • github.com/dotnet/home Help and feedback • JabbR: https://jabbr.net/#rooms/ aspnetvnext • ASP.NET forums: http://forums.asp.net Have a look in the kitchen
  • 14. .NET Foundation • Focused on .NET FX • Apache 2 license mostly • No platform restrictions Fostering open development and collaboration
  • 15. Symmetry Taking away the differences and embracing choice
  • 16. DNX - .NET Execution Environment • Compilation system • SDK tools (DNVM, DNU) • Native CLR hosts Code required to bootstrap and run an application Goals • Change code and run • Expose metadata about the runtime for others to query • Create a cached version of your application's dependencies ("compilation") Principles • NuGet all the things • There is no such thing as "design time" • Dependencies are always described as what not where
  • 17. Cross-platform tooling A warm welcome to MacOS and Linux
  • 18. Building and running Choose your own tooling Web Server Website C# Code (.cs file) Binary Roslyn
  • 19. Command-line first Offering both a CLI and UI experience
  • 20. Command-line first More than just Visual Studio
  • 21. Text before UI • Everything from text files – Projects – Configuration – Preferences and options – Launch settings • JSON is preferred data format Return of the text files
  • 22. New project system .csproj is gone. Long live project.json • Independent of Visual Studio • JSON files instead of VS artefacts • Every file is relevant – Unless stated otherwise • Specific folder structure • Build for multiple target frameworks
  • 23. Modern web architecture Modular, pay as you use, light-weight and fast
  • 24. NuGet all the things • NuGet packages are unit of reference – Not assemblies Projects: • build NuGet packages • reference NuGet packages Simplify dependency management
  • 25. Runtime loading • Dependency resolution rules • Nearest wins • Cousin dependencies Playing by the rules
  • 26. Deploying ASP.NET 5 applications With source code Without source code XCopy deployment
  • 27. Global tools • DNX console applications in a NuGet package • Installed globally • Runnable from command line. Example: User-secret
  • 28. Assembly Neutral Interfaces • Allows an interface's identity to not be tied to its assembly – Interface used as a contract – No requirement on shared binary asset (compile-time and run-time) • Interfaces must be identical – Exact same types and marked with [AssemblyNeutral] [AssemblyNeutral] public interface ILogger { void Log(string message); }
  • 30. Your feedback is important! Scan the QR Code and let us know via the TechDays App. Laat ons weten wat u van de sessie vindt! Scan the QR Code via de TechDays App. Bent u al lid van de Microsot Virtual Academy?! Op MVA kunt u altijd iets nieuws leren over de laatste technologie van Microsoft. Meld u vandaag aan op de MVA Stand. MVA biedt 7/24 gratis online training on-demand voor IT- Professionals en Ontwikkelaars.

Editor's Notes

  1. http://nuget.codeplex.com/releases/view/59864
  2. Enable a quick development workflow
  3. https://github.com/aspnet/Home/wiki/Dependency-Resolution
  4. http://whereslou.com/2014/05/23/asp-net-vnext-moving-parts-iconfiguration/