Meet the new kid on the blockMicrosoft’s :5
Christos Matskas
Join the conversation on Twitter: @DevWeek #DW2015
Who am I?
Name: Christos Matskas
I blog here: https://cmatskas.com
I tweet here: @christosmatskas
Github: https://github.com/cmatskas
Agenda
• The .NET Ecosystem
• Where does ASP.NET fit in the new world?
• What’s new in ASP.NET 5?
• Demos
2014 – 2015 “OPEN” for business
• .NET Foundation
• Over 32 open source projects
• Highlighted projects
• Roslyn• ASP.NET 5• .NET Core• SignalR
• MSBuild• Orleans• Owin• NuGet
History of .NET “verticals”
.NET Windows Desktop Windows Store Windows Phone ASP.NET 4 ASP.NET 5
App ModelApp Model
App ModelApp Model App Model
Framework
Framework
Framework
Framework
Runtime
Runtime
Runtime
Framework
Runtime
Runtime
Enter .NET Core
.NET Core
Unified BCL(Base Class Library)
Runtime Adaptation Model
Core CLR .NET Native and Runtime Other Runtime
ASP.NET 5App Model
Universal Windows App Model (UAP)
Any other App Model
Where does ASP.NET fit in the new world?
ASP.NET 5Unified framework for MVC, Web API & SignalR
.NET Framework 4.6 stack and libs
Full .NET Framework for all scenarios & libraries
.NET Core 5 stack and libs
Small runtile optimized for server & cloud workloads
OpenSource
Runtime LoaderIIS: WebEngine4
Exe: OSDNX
Operating SystemWindowsWindows, OSX,
Linux
LibrariesLoose, GAC, Nuget NuGet
App FrameworksFCL, GAC, NuGet NuGet
Web ServerIISIIS, HTTP.SYS,
Kestrel
Application HostSystem.Web DNX
Platform Libraries.NET BCL & FCL.NET BCL & FCL.NET on Nuget
Runtime.NET CLR.NET CLR - .NET
Core CLR
ApplicationMSBuild/CodeDom
-> csc.exeDNX (Roslyn)
ASP.NET 5 – Features
• Agility• Control• Speed• Client side tools• Performance• Cloud support• Cross Platform• Web Standards• Browser tooling support
Agility
Faster Development Cycle• Features are shipped as packages
• Framework is part of the application (.NET Core)
More Control• Only zero-day security bugs will be patched automatically
• Same code running from development to production
• New version choice in the hands of the developers
Speed
Development productivity + low friction• No compilation => Save and refresh
• Framework is part of the application (.NET Core)
Improved runtime performance• Faster startup times (~2-3”)
• Lower memory / higher density for HTTP Requests (> 90%)
• Modular, only pull the functionality and features required
• Raw sockets/full framework or both
Cloud-ready
Seamless transition from on-premise to the cloud• No code changes required
Diagnostics• Run/Debug directly in the Cloud
• Tracing/Logging without re-deploy
Cloud ready and cloud optimized• Consistent configuration across environments• Session and Cache providers same for on-premise and cloud operation
Cross-Platform
Truly OSS where anyone can contribure
Editors• Visual Studio, any text editor, cloud editors
• Hardcore level : command-line
Runtime• Windows – Mac - Linux
Standards & Tooling
Full support for HTML5, CSS3 and JavaScript• Adaptive and open for integration
Client tools• Why re-invent the wheel?
• Grunt, Bower and Node.js fully integrated in VS2015
Tooling support• Bi-directional communication between browser tools and VS2015
Getting started with ASP.NET 5
• Go to http://asp.net/vnext and install VS2015 (CTP6)
• Docs: http://asp.net/vnext
• Code:• ASP.NET 5: http://github.com/aspnet/home• .NET Core: http://github.com/dotnet/home
• Getting help• ASP.NET vNext forum: http://forums.asp.net• JabbR: https://jabbr.net/#/rooms/aspnetvnext• StatckOverflow (asp.net-vnext)