SlideShare a Scribd company logo

ASP.NET Core: The best of the new bits

These slides provide an overview of .NET Core and also the changes to ASP.NET Core after the RC2 release. There is also some demos and source code. This talk was given at the Let's Dev This Roadshow in London, ON on May 26, 2016.

1 of 50
Download to read offline
ASP.NET Core: The
best of the new bits
Ken Cenerelli
About Me
Twitter: @KenCenerelli
Email: Ken_Cenerelli@Outlook.com
Blog: kencenerelli.wordpress.com
LinkedIn: linkedin.com/in/kencenerelli
Bio:
 Programmer Writer / Content Developer
 Microsoft MVP - Visual Studio and
Development Technologies
 Microsoft TechNet Wiki Guru
 Co-Organizer of CTTDNUG
 Technical reviewer of multiple books
CTTDNUG
Ken Cenerelli
.NET Core
First things first…
.NET 2016 – 10K foot view
Next gen JIT (RyuJIT)
SIMD
Runtime
Components Compilers
.NET Compiler Platform (Roslyn)
Languages innovation
.NET Core 1.0 Libraries
.NET Framework 4.6 Libraries
NuGet packages
.NET Framework 4.6 .NET Core 1.0
Full .NET Framework for any scenario and
library support on Windows
Modular libraries & runtime optimized for
server and cloud workloads
About .NET Core
• .NET Core is a subset of the .NET Framework
• Many .NET Framework components are not in .NET Core
• .NET Core is completely modularized. Each component is
distributed via NuGet
• Apps can be updated independently and do not rely on major
framework releases
• Deployment package includes everything needed to run
• .NET Core will run on Linux, Windows, and OSX
5
Two parts of .NET Core
•Runtime/Libraries:
• CLR, libraries, compilers, etc.
• Won’t change before RTM
•Tooling:
• Supports .NET Core and ASP.NET Core, including the new
command line tools and bits that plug into Visual Studio
& Visual Studio Code
• Will change before RTM
6
Differences
7
Feature .NET Framework .NET Core
Library Installation Centralised Distributed with each app
Updates
One big update. You better get
your app ready
Updates to framework are
independent of app.
Update NuGet packages
when you are ready
Platforms Windows is the only one for me
I love everyone!
Windows, OSX, Linux
Base Class Library
All the things! You get the entire
BCL
All the things!
You get the entire BCL
Credit: https://gooroo.io/GoorooTHINK/Article/16732/Introduction-to-NET-Core/22177
8
Credit: opensource.com
Strange Times…
9
Visual Studio 2015 and ASP.NET Core:
Support for npm, bower, gulp, grunt, etc.
npm bower grunt gulp
Responsive and plug-in free
http://bradfrost.com/blog/post/this-is-the-web/
Responsive and plug-in free
http://bradfrost.com/blog/post/this-is-the-web/
Responsive and plug-in free
http://bradfrost.com/blog/post/this-is-the-web/
ASP.NET Core
What about ASP.NET 5?
• ASP.NET Core 1.0 was previously called ASP.NET 5
• It was renamed in January 2016
• You may still see it referred to as ASP.NET 5 in Visual
Studio and in some docs
• Was updated in latest ASP.NET Core Release Candidate 2
ASP.NET 4.6 and ASP.NET Core 1.0
ASP.NET Core 1.0 Roadmap
https://github.com/aspnet/home/wiki/roadmap
Milestone Release week
Beta6 27 Jul 2015
Beta7 2 Sep 2015
Beta8 15 Oct 2015
RC1 Nov 2015
RC2 mid-May 2016
1.0.0 late-June 2016
.NET 2016 – 10K foot view
Next gen JIT (RyuJIT)
SIMD
Runtime
Components Compilers
.NET Compiler Platform (Roslyn)
Languages innovation
.NET Core 1.0 Libraries
.NET Framework 4.6 Libraries
NuGet packages
.NET Framework 4.6 .NET Core 1.0
Full .NET Framework for any scenario and
library support on Windows
Modular libraries & runtime optimized for
server and cloud workloads
ASP.NET 2016 in a Nutshell
.NET Framework 4.6 .NET Core 1.0
Full .NET Framework for any scenario and
library support on Windows
Modular libraries & runtime optimized for
server and cloud workloads
ASP.NET Core 1.0 – Key Values
Choose your Editors
and Tools
Open Source
with Contributions Cross-PlatformOSS
Seamless transition
from on-premises to cloud
Faster Development CycleTotally Modular
Fast
ASP.NET Core ~ What is it?
21
• ASP.NET Core 1.0 is a console app
• In RC1, an ASP.NET application was a class library that contained a
Startup.cs class
• As of RC2, an ASP.NET Core application is a .NET Core Console application
that calls into ASP.NET specific libraries
• So code that used to live in the ASP.NET Hosting libraries and
automatically runs your Startup.cs now lives inside a Program.cs
ASP.NET Core ~ The features
• Hosting
• Kestrel, Startup
• Middleware
• Routing, authentication, static files, diagnostics, error
handling, session, CORS, localization, custom
• Dependency Injection
• Configuration
• Logging
• Identity
22
ASP.NET Core ~ Which editors & IDEs?
•Visual Studio 2015 Update 2 including Community
•Visual Studio Code with C# extension
•An OmniSharp-enabled editor:
23
• Atom • Emacs
• Brackets • Sublime Text
• Yeoman • Vim
ASP.NET Core ~ What can you do?
•ASP.NET
• MVC Web Apps in C#
• Web API apps
• Console apps
• .NET Core compatible class library
•Signal R and Web Pages are coming after RTM
24
ASP.NET Core: The best of the new bits
ASP.NET Core MVC
•One set of concepts – remove duplication
•Web UI and Web APIs
•Built on ASP.NET Core
•Supports .NET Core
•Runs on IIS or self-hosted
•Deep integration with DI
26
OWIN (Open Web Interface for .NET)
• OWIN in an open, community owned specification
• OWIN defines pluggable middleware and hosting
• ASP.NET 4.5 and ASP.NET Core 1.0 both support OWIN
Deployment portability
•Two main models:
• Portable Apps
• Self-contained Apps
28
Portable Apps
•Default application type in .NET Core
•Require .NET Core to be installed on the target
machine
•Your application is portable between installations of
.NET Core
•No need to decide upfront which OSes your app will
run on
29
Self-contained Apps
•All app dependencies, including the .NET Core
runtime, is part of the application
•The app is larger, but also capable of running on any
.NET Core supported platforms with the correct
native dependencies
•Need to make an explicit choice which platforms
your application needs to run on during dev
30
Setting Portability
• Portable: • Self Contained:
• Target .NET Core libraries
in project.json
• Remove any "type":
"platform" properties
• Add a runtimes node in
your project.json
• •
31
Tooling Changes
What’s new in ASP.NET Core RC2?
•.NET CLI (SDK) and IDE updates
•Tag Helpers
•IIS support baked in
•Host RC2 apps in Azure App Service
•Docker support with a new version of Docker Tools
for Visual Studio 2015
33
ASP.NET Core SDK
34
•The .NET Core SDK includes enough software to
build an app
•The SDK gives you both the .NET Core Tools and a
copy of .NET Core
•https://www.microsoft.com/net/core#windows
Demo
ASP.NET Core 1.0 from the SDK
ASP.NET Core IDE
•The best way to develop with .NET Core on Windows
is to download the Visual Studio official MSI Installer
and the latest NuGet Manager extension for Visual
Studio
•https://www.microsoft.com/net/core#windows
36
Demo
ASP.NET Core 1.0 from the IDE
TagHelpers: Evolution of HTML Forms
• HTML helpers expressed as tags
Ex. Instead of:
@Html.LabelFor(m => m.UserName, new { @class = "col-md-2 control-label" })
Write this:
<label asp-for="UserName" class="col-md-2 control-label"></label>
• Easier to customize with more attributes
• Work seamlessly with the HTML editor
• Markup now looks like HTML and it comes with full
IntelliSense
TagHelpers
Demo
TagHelpers
What about Entity Framework?
•EF6.x most current and runs on .NET Framework 4.6
•Entity Framework 7 renamed to Entity Framework
Core 1.0
•EF Core is a new code base that does not inherit all
the features and API surface of EF6.x
•EF6.x will continue to be a supported for some time
41
When to use EF Core?
•EF6.x will still be the most suitable choice for most
applications
•EF Core recommended for:
• New applications that do not need features that are not
yet implemented in EF Core
• Applications that target .NET Core, such as Universal
Windows Platform (UWP) and ASP.NET Core apps
42
Web APIs
In ASP.NET 4.6 – Separate Stack
In ASP.NET Core:
API services are an ASP.NET Core feature
Microsoft /web®
Sample Read-only Model and Controller
Microsoft /web®
Read-only Controller Actions to return data
Routing a Web API
Resources
Feedback and questions
http://asp.net
http://get.asp.net
http://docs.asp.net
http://aka.ms/webcamps-training-kit
ASP.NET Core: The best of the new bits

More Related Content

What's hot

.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnetRick van den Bosch
 
.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6aminmesbahi
 
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 fundamentalsLalit Kale
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentationivpol
 
Selenium Architecture
Selenium ArchitectureSelenium Architecture
Selenium Architecturerohitnayak
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC PresentationVolkan Uzun
 
FULL stack -> MEAN stack
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stackAshok Raj
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.jsDinesh U
 
Working with Dynamic Content and Adding Templating engines, MVC
Working with Dynamic Content and Adding Templating engines, MVCWorking with Dynamic Content and Adding Templating engines, MVC
Working with Dynamic Content and Adding Templating engines, MVCKnoldus Inc.
 
Spring boot Introduction
Spring boot IntroductionSpring boot Introduction
Spring boot IntroductionJeevesh Pandey
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewShahed Chowdhuri
 
Angular 8
Angular 8 Angular 8
Angular 8 Sunil OS
 
Introduction to angular with a simple but complete project
Introduction to angular with a simple but complete projectIntroduction to angular with a simple but complete project
Introduction to angular with a simple but complete projectJadson Santos
 

What's hot (20)

.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet.Net Core - not your daddy's dotnet
.Net Core - not your daddy's dotnet
 
.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6.NET Core, ASP.NET Core Course, Session 6
.NET Core, ASP.NET Core Course, Session 6
 
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
 
Blazor web apps
Blazor web appsBlazor web apps
Blazor web apps
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Selenium Architecture
Selenium ArchitectureSelenium Architecture
Selenium Architecture
 
Net core
Net coreNet core
Net core
 
Spring boot
Spring bootSpring boot
Spring boot
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
NodeJS for Beginner
NodeJS for BeginnerNodeJS for Beginner
NodeJS for Beginner
 
FULL stack -> MEAN stack
FULL stack -> MEAN stackFULL stack -> MEAN stack
FULL stack -> MEAN stack
 
Introduction to node.js
Introduction to node.jsIntroduction to node.js
Introduction to node.js
 
Working with Dynamic Content and Adding Templating engines, MVC
Working with Dynamic Content and Adding Templating engines, MVCWorking with Dynamic Content and Adding Templating engines, MVC
Working with Dynamic Content and Adding Templating engines, MVC
 
Spring boot Introduction
Spring boot IntroductionSpring boot Introduction
Spring boot Introduction
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with Overview
 
Angular 8
Angular 8 Angular 8
Angular 8
 
Maven ppt
Maven pptMaven ppt
Maven ppt
 
Introduction to angular with a simple but complete project
Introduction to angular with a simple but complete projectIntroduction to angular with a simple but complete project
Introduction to angular with a simple but complete project
 
Nodejs presentation
Nodejs presentationNodejs presentation
Nodejs presentation
 

Viewers also liked

Getting Started with ASP.net Core 1.0
Getting Started with ASP.net Core 1.0Getting Started with ASP.net Core 1.0
Getting Started with ASP.net Core 1.0joescars
 
ASP.NET Core 1.0 Overview: Post-RC2
ASP.NET Core 1.0 Overview: Post-RC2ASP.NET Core 1.0 Overview: Post-RC2
ASP.NET Core 1.0 Overview: Post-RC2Shahed Chowdhuri
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewShahed Chowdhuri
 
Dia 01 - Workshop ASP.NET CORE 1.1
Dia 01 - Workshop ASP.NET CORE 1.1Dia 01 - Workshop ASP.NET CORE 1.1
Dia 01 - Workshop ASP.NET CORE 1.1Rodrigo Kono
 
Netcore - Emergic MailArray - Email Archiving & Compliance Solution
Netcore - Emergic MailArray - Email Archiving & Compliance SolutionNetcore - Emergic MailArray - Email Archiving & Compliance Solution
Netcore - Emergic MailArray - Email Archiving & Compliance SolutionNetcore Solutions
 
Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0Lohith Goudagere Nagaraj
 
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)György Balássy
 
Enterprise Developer Meetup bevezető (2015.01.28.)
Enterprise Developer Meetup bevezető (2015.01.28.)Enterprise Developer Meetup bevezető (2015.01.28.)
Enterprise Developer Meetup bevezető (2015.01.28.)György Balássy
 
XXI. századi szoftverfejlesztés
XXI. századi szoftverfejlesztésXXI. századi szoftverfejlesztés
XXI. századi szoftverfejlesztésGyörgy Balássy
 
Windows a dobozban, avagy IoT fejlesztés C#-ban
Windows a dobozban, avagy IoT fejlesztés C#-banWindows a dobozban, avagy IoT fejlesztés C#-ban
Windows a dobozban, avagy IoT fejlesztés C#-banGyörgy Balássy
 
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?György Balássy
 
IIS 7.5 webszerver újdonságok
IIS 7.5 webszerver újdonságokIIS 7.5 webszerver újdonságok
IIS 7.5 webszerver újdonságokGyörgy Balássy
 
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalataiA mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalataiGyörgy Balássy
 
The Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldThe Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldOpenAgile Romania
 
Times Ten in-memory database when time counts - Laszlo Ludas
Times Ten in-memory database when time counts - Laszlo LudasTimes Ten in-memory database when time counts - Laszlo Ludas
Times Ten in-memory database when time counts - Laszlo LudasORACLE USER GROUP ESTONIA
 

Viewers also liked (20)

ASP.NET Core 1.0 Overview
ASP.NET Core 1.0 OverviewASP.NET Core 1.0 Overview
ASP.NET Core 1.0 Overview
 
Getting Started with ASP.net Core 1.0
Getting Started with ASP.net Core 1.0Getting Started with ASP.net Core 1.0
Getting Started with ASP.net Core 1.0
 
ASP.NET Core 1.0 Overview: Post-RC2
ASP.NET Core 1.0 Overview: Post-RC2ASP.NET Core 1.0 Overview: Post-RC2
ASP.NET Core 1.0 Overview: Post-RC2
 
ASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with OverviewASP.NET Core MVC + Web API with Overview
ASP.NET Core MVC + Web API with Overview
 
Dia 01 - Workshop ASP.NET CORE 1.1
Dia 01 - Workshop ASP.NET CORE 1.1Dia 01 - Workshop ASP.NET CORE 1.1
Dia 01 - Workshop ASP.NET CORE 1.1
 
Netcore - Emergic MailArray - Email Archiving & Compliance Solution
Netcore - Emergic MailArray - Email Archiving & Compliance SolutionNetcore - Emergic MailArray - Email Archiving & Compliance Solution
Netcore - Emergic MailArray - Email Archiving & Compliance Solution
 
ecm
ecmecm
ecm
 
hostedexchange
hostedexchangehostedexchange
hostedexchange
 
Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0Cross Platform Web Applications Using ASP.NET Core 1.0
Cross Platform Web Applications Using ASP.NET Core 1.0
 
Ais powerpoint (1)
Ais powerpoint (1)Ais powerpoint (1)
Ais powerpoint (1)
 
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)
Prototípus-fejlesztés 3D nyomtatással (Balássy György és Takács Péter)
 
Enterprise Developer Meetup bevezető (2015.01.28.)
Enterprise Developer Meetup bevezető (2015.01.28.)Enterprise Developer Meetup bevezető (2015.01.28.)
Enterprise Developer Meetup bevezető (2015.01.28.)
 
XXI. századi szoftverfejlesztés
XXI. századi szoftverfejlesztésXXI. századi szoftverfejlesztés
XXI. századi szoftverfejlesztés
 
Windows a dobozban, avagy IoT fejlesztés C#-ban
Windows a dobozban, avagy IoT fejlesztés C#-banWindows a dobozban, avagy IoT fejlesztés C#-ban
Windows a dobozban, avagy IoT fejlesztés C#-ban
 
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?
TypeScript: Tényleg ez lenne a fájdalommentes JavaScript?
 
IIS 7.5 webszerver újdonságok
IIS 7.5 webszerver újdonságokIIS 7.5 webszerver újdonságok
IIS 7.5 webszerver újdonságok
 
.NET Core 1.0
.NET Core 1.0.NET Core 1.0
.NET Core 1.0
 
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalataiA mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai
 
The Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldThe Craftsman Developer In An Agile World
The Craftsman Developer In An Agile World
 
Times Ten in-memory database when time counts - Laszlo Ludas
Times Ten in-memory database when time counts - Laszlo LudasTimes Ten in-memory database when time counts - Laszlo Ludas
Times Ten in-memory database when time counts - Laszlo Ludas
 

Similar to ASP.NET Core: The best of the new bits

.NET framework vs .net core 3.1 commons &amp; differences
 .NET framework vs .net core 3.1  commons &amp; differences .NET framework vs .net core 3.1  commons &amp; differences
.NET framework vs .net core 3.1 commons &amp; differencesAlina Vilk
 
.Net: Introduction, trends and future
.Net: Introduction, trends and future.Net: Introduction, trends and future
.Net: Introduction, trends and futureBishnu Rawal
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele RialdiCodeFest
 
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 TimeAmazon Web Services
 
Asp.Net Core MVC , Razor page , Entity Framework Core
Asp.Net Core MVC , Razor page , Entity Framework CoreAsp.Net Core MVC , Razor page , Entity Framework Core
Asp.Net Core MVC , Razor page , Entity Framework Coremohamed elshafey
 
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 rumbleTadeusz Balcer
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCSaineshwar bageri
 
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 Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1.NET Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1aminmesbahi
 
Porting Projects to .NET 5
Porting Projects to .NET 5Porting Projects to .NET 5
Porting Projects to .NET 5Immo Landwerth
 
Pottnet Meetup Essen - ASP.Net Core
Pottnet Meetup Essen - ASP.Net CorePottnet Meetup Essen - ASP.Net Core
Pottnet Meetup Essen - ASP.Net CoreMalte Lantin
 
Pottnet MeetUp Essen - ASP.Net Core
Pottnet MeetUp Essen - ASP.Net CorePottnet MeetUp Essen - ASP.Net Core
Pottnet MeetUp Essen - ASP.Net CoreMalte Lantin
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)Shoaib Ghachi
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 
NET core 2 e i fratelli
NET core 2 e i fratelliNET core 2 e i fratelli
NET core 2 e i fratelliAndrea Tosato
 
ASP.NET Core 1.0 Overview: Pre-RC2
ASP.NET Core 1.0 Overview: Pre-RC2ASP.NET Core 1.0 Overview: Pre-RC2
ASP.NET Core 1.0 Overview: Pre-RC2Shahed Chowdhuri
 
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 AzureMichele Aponte
 
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 TemplatesPratik Khasnabis
 
Academy PRO: .NET Core intro
Academy PRO: .NET Core introAcademy PRO: .NET Core intro
Academy PRO: .NET Core introBinary Studio
 

Similar to ASP.NET Core: The best of the new bits (20)

.NET framework vs .net core 3.1 commons &amp; differences
 .NET framework vs .net core 3.1  commons &amp; differences .NET framework vs .net core 3.1  commons &amp; differences
.NET framework vs .net core 3.1 commons &amp; differences
 
.Net: Introduction, trends and future
.Net: Introduction, trends and future.Net: Introduction, trends and future
.Net: Introduction, trends and future
 
Raffaele Rialdi
Raffaele RialdiRaffaele Rialdi
Raffaele Rialdi
 
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
 
Asp.Net Core MVC , Razor page , Entity Framework Core
Asp.Net Core MVC , Razor page , Entity Framework CoreAsp.Net Core MVC , Razor page , Entity Framework Core
Asp.Net Core MVC , Razor page , Entity Framework Core
 
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
 
Introduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVCIntroduction to .NET Core & ASP.NET Core MVC
Introduction to .NET Core & ASP.NET Core MVC
 
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 Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1.NET Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1
 
Porting Projects to .NET 5
Porting Projects to .NET 5Porting Projects to .NET 5
Porting Projects to .NET 5
 
Pottnet Meetup Essen - ASP.Net Core
Pottnet Meetup Essen - ASP.Net CorePottnet Meetup Essen - ASP.Net Core
Pottnet Meetup Essen - ASP.Net Core
 
Pottnet MeetUp Essen - ASP.Net Core
Pottnet MeetUp Essen - ASP.Net CorePottnet MeetUp Essen - ASP.Net Core
Pottnet MeetUp Essen - ASP.Net Core
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
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 Core 1.0 Overview: Pre-RC2
ASP.NET Core 1.0 Overview: Pre-RC2ASP.NET Core 1.0 Overview: Pre-RC2
ASP.NET Core 1.0 Overview: Pre-RC2
 
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
 
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
 
Crack mcts.com
Crack mcts.comCrack mcts.com
Crack mcts.com
 
Academy PRO: .NET Core intro
Academy PRO: .NET Core introAcademy PRO: .NET Core intro
Academy PRO: .NET Core intro
 

More from Ken Cenerelli

ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment optionsKen Cenerelli
 
No SQL, No Problem: Use Azure DocumentDB
No SQL, No Problem: Use Azure DocumentDBNo SQL, No Problem: Use Azure DocumentDB
No SQL, No Problem: Use Azure DocumentDBKen Cenerelli
 
Azure app service to create web and mobile apps
Azure app service to create web and mobile appsAzure app service to create web and mobile apps
Azure app service to create web and mobile appsKen Cenerelli
 
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
Analyze Your Code With Visual Studio 2015 Diagnostic ToolsAnalyze Your Code With Visual Studio 2015 Diagnostic Tools
Analyze Your Code With Visual Studio 2015 Diagnostic ToolsKen Cenerelli
 
Building high performance software with Microsoft Application Insights
Building high performance software with Microsoft Application InsightsBuilding high performance software with Microsoft Application Insights
Building high performance software with Microsoft Application InsightsKen Cenerelli
 
An Introduction to Universal Windows Apps
An Introduction to Universal Windows AppsAn Introduction to Universal Windows Apps
An Introduction to Universal Windows Apps Ken Cenerelli
 
Build end-to-end video experiences with Azure Media Services
Build end-to-end video experiences with Azure Media ServicesBuild end-to-end video experiences with Azure Media Services
Build end-to-end video experiences with Azure Media ServicesKen Cenerelli
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureKen Cenerelli
 
Building Windows 8.1 Apps with Mobile Services
Building Windows 8.1 Apps with Mobile ServicesBuilding Windows 8.1 Apps with Mobile Services
Building Windows 8.1 Apps with Mobile ServicesKen Cenerelli
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...Ken Cenerelli
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...Ken Cenerelli
 
An Introduction to Windows Phone 7 Development
An Introduction to Windows Phone 7 DevelopmentAn Introduction to Windows Phone 7 Development
An Introduction to Windows Phone 7 DevelopmentKen Cenerelli
 
Introduction To Umbraco
Introduction To UmbracoIntroduction To Umbraco
Introduction To UmbracoKen Cenerelli
 

More from Ken Cenerelli (14)

ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment options
 
No SQL, No Problem: Use Azure DocumentDB
No SQL, No Problem: Use Azure DocumentDBNo SQL, No Problem: Use Azure DocumentDB
No SQL, No Problem: Use Azure DocumentDB
 
Azure app service to create web and mobile apps
Azure app service to create web and mobile appsAzure app service to create web and mobile apps
Azure app service to create web and mobile apps
 
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
Analyze Your Code With Visual Studio 2015 Diagnostic ToolsAnalyze Your Code With Visual Studio 2015 Diagnostic Tools
Analyze Your Code With Visual Studio 2015 Diagnostic Tools
 
Azure Data Storage
Azure Data StorageAzure Data Storage
Azure Data Storage
 
Building high performance software with Microsoft Application Insights
Building high performance software with Microsoft Application InsightsBuilding high performance software with Microsoft Application Insights
Building high performance software with Microsoft Application Insights
 
An Introduction to Universal Windows Apps
An Introduction to Universal Windows AppsAn Introduction to Universal Windows Apps
An Introduction to Universal Windows Apps
 
Build end-to-end video experiences with Azure Media Services
Build end-to-end video experiences with Azure Media ServicesBuild end-to-end video experiences with Azure Media Services
Build end-to-end video experiences with Azure Media Services
 
Cloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with AzureCloud Powered Mobile Apps with Azure
Cloud Powered Mobile Apps with Azure
 
Building Windows 8.1 Apps with Mobile Services
Building Windows 8.1 Apps with Mobile ServicesBuilding Windows 8.1 Apps with Mobile Services
Building Windows 8.1 Apps with Mobile Services
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
Maximizing code reuse between Windows Phone 8 and Windows 8 (That Conference ...
 
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
Maximizing code reuse between Windows Phone 8 and Windows 8 (DevTeach Toronto...
 
An Introduction to Windows Phone 7 Development
An Introduction to Windows Phone 7 DevelopmentAn Introduction to Windows Phone 7 Development
An Introduction to Windows Phone 7 Development
 
Introduction To Umbraco
Introduction To UmbracoIntroduction To Umbraco
Introduction To Umbraco
 

Recently uploaded

Python For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emPython For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emNho Vĩnh
 
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueShapeBlue
 
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueCloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueShapeBlue
 
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...MichaelBenis1
 
Achieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfAchieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfIES VE
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientKari Kakkonen
 
Key projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIKey projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIVijayananda Mohire
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriSafe Software
 
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Jay Zhao
 
AMER Introduction to ThousandEyes Webinar
AMER Introduction to ThousandEyes WebinarAMER Introduction to ThousandEyes Webinar
AMER Introduction to ThousandEyes WebinarThousandEyes
 
TrustArc Webinar - TrustArc's Latest AI Innovations
TrustArc Webinar - TrustArc's Latest AI InnovationsTrustArc Webinar - TrustArc's Latest AI Innovations
TrustArc Webinar - TrustArc's Latest AI InnovationsTrustArc
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsScyllaDB
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubShapeBlue
 
eXtended Reality(XR) Basic introductions
eXtended Reality(XR) Basic introductionseXtended Reality(XR) Basic introductions
eXtended Reality(XR) Basic introductionsElanthirayan Madhavan
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...ShapeBlue
 
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024BookNet Canada
 
Mastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationMastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationAppsthentic Technology
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024ThousandEyes
 
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...Chris Bingham
 
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...SearchNorwich
 

Recently uploaded (20)

Python For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ emPython For Kids - Sách Lập trình cho trẻ em
Python For Kids - Sách Lập trình cho trẻ em
 
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
 
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueCloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
 
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
 
Achieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdfAchieving Excellence IESVE for HVAC Simulation.pdf
Achieving Excellence IESVE for HVAC Simulation.pdf
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficient
 
Key projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AIKey projects in AI, ML and Generative AI
Key projects in AI, ML and Generative AI
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
Leonis Insights: The State of AI (7 trends for 2023 and 7 predictions for 2024)
 
AMER Introduction to ThousandEyes Webinar
AMER Introduction to ThousandEyes WebinarAMER Introduction to ThousandEyes Webinar
AMER Introduction to ThousandEyes Webinar
 
TrustArc Webinar - TrustArc's Latest AI Innovations
TrustArc Webinar - TrustArc's Latest AI InnovationsTrustArc Webinar - TrustArc's Latest AI Innovations
TrustArc Webinar - TrustArc's Latest AI Innovations
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & Pitfalls
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
 
eXtended Reality(XR) Basic introductions
eXtended Reality(XR) Basic introductionseXtended Reality(XR) Basic introductions
eXtended Reality(XR) Basic introductions
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
 
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
 
Mastering Play Store App Listing and Optimization
Mastering Play Store App Listing and OptimizationMastering Play Store App Listing and Optimization
Mastering Play Store App Listing and Optimization
 
New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024New ThousandEyes Product Features and Release Highlights: February 2024
New ThousandEyes Product Features and Release Highlights: February 2024
 
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...
Learning About GenAI Engineering with AWS PartyRock [AWS User Group Basel - F...
 
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...
ChatGPT's Code Interpreter: Your secret weapon for SEO automation success - S...
 

ASP.NET Core: The best of the new bits

  • 1. ASP.NET Core: The best of the new bits Ken Cenerelli
  • 2. About Me Twitter: @KenCenerelli Email: Ken_Cenerelli@Outlook.com Blog: kencenerelli.wordpress.com LinkedIn: linkedin.com/in/kencenerelli Bio:  Programmer Writer / Content Developer  Microsoft MVP - Visual Studio and Development Technologies  Microsoft TechNet Wiki Guru  Co-Organizer of CTTDNUG  Technical reviewer of multiple books CTTDNUG Ken Cenerelli
  • 4. .NET 2016 – 10K foot view Next gen JIT (RyuJIT) SIMD Runtime Components Compilers .NET Compiler Platform (Roslyn) Languages innovation .NET Core 1.0 Libraries .NET Framework 4.6 Libraries NuGet packages .NET Framework 4.6 .NET Core 1.0 Full .NET Framework for any scenario and library support on Windows Modular libraries & runtime optimized for server and cloud workloads
  • 5. About .NET Core • .NET Core is a subset of the .NET Framework • Many .NET Framework components are not in .NET Core • .NET Core is completely modularized. Each component is distributed via NuGet • Apps can be updated independently and do not rely on major framework releases • Deployment package includes everything needed to run • .NET Core will run on Linux, Windows, and OSX 5
  • 6. Two parts of .NET Core •Runtime/Libraries: • CLR, libraries, compilers, etc. • Won’t change before RTM •Tooling: • Supports .NET Core and ASP.NET Core, including the new command line tools and bits that plug into Visual Studio & Visual Studio Code • Will change before RTM 6
  • 7. Differences 7 Feature .NET Framework .NET Core Library Installation Centralised Distributed with each app Updates One big update. You better get your app ready Updates to framework are independent of app. Update NuGet packages when you are ready Platforms Windows is the only one for me I love everyone! Windows, OSX, Linux Base Class Library All the things! You get the entire BCL All the things! You get the entire BCL Credit: https://gooroo.io/GoorooTHINK/Article/16732/Introduction-to-NET-Core/22177
  • 10. Visual Studio 2015 and ASP.NET Core: Support for npm, bower, gulp, grunt, etc. npm bower grunt gulp
  • 11. Responsive and plug-in free http://bradfrost.com/blog/post/this-is-the-web/
  • 12. Responsive and plug-in free http://bradfrost.com/blog/post/this-is-the-web/
  • 13. Responsive and plug-in free http://bradfrost.com/blog/post/this-is-the-web/
  • 15. What about ASP.NET 5? • ASP.NET Core 1.0 was previously called ASP.NET 5 • It was renamed in January 2016 • You may still see it referred to as ASP.NET 5 in Visual Studio and in some docs • Was updated in latest ASP.NET Core Release Candidate 2
  • 16. ASP.NET 4.6 and ASP.NET Core 1.0
  • 17. ASP.NET Core 1.0 Roadmap https://github.com/aspnet/home/wiki/roadmap Milestone Release week Beta6 27 Jul 2015 Beta7 2 Sep 2015 Beta8 15 Oct 2015 RC1 Nov 2015 RC2 mid-May 2016 1.0.0 late-June 2016
  • 18. .NET 2016 – 10K foot view Next gen JIT (RyuJIT) SIMD Runtime Components Compilers .NET Compiler Platform (Roslyn) Languages innovation .NET Core 1.0 Libraries .NET Framework 4.6 Libraries NuGet packages .NET Framework 4.6 .NET Core 1.0 Full .NET Framework for any scenario and library support on Windows Modular libraries & runtime optimized for server and cloud workloads
  • 19. ASP.NET 2016 in a Nutshell .NET Framework 4.6 .NET Core 1.0 Full .NET Framework for any scenario and library support on Windows Modular libraries & runtime optimized for server and cloud workloads
  • 20. ASP.NET Core 1.0 – Key Values Choose your Editors and Tools Open Source with Contributions Cross-PlatformOSS Seamless transition from on-premises to cloud Faster Development CycleTotally Modular Fast
  • 21. ASP.NET Core ~ What is it? 21 • ASP.NET Core 1.0 is a console app • In RC1, an ASP.NET application was a class library that contained a Startup.cs class • As of RC2, an ASP.NET Core application is a .NET Core Console application that calls into ASP.NET specific libraries • So code that used to live in the ASP.NET Hosting libraries and automatically runs your Startup.cs now lives inside a Program.cs
  • 22. ASP.NET Core ~ The features • Hosting • Kestrel, Startup • Middleware • Routing, authentication, static files, diagnostics, error handling, session, CORS, localization, custom • Dependency Injection • Configuration • Logging • Identity 22
  • 23. ASP.NET Core ~ Which editors & IDEs? •Visual Studio 2015 Update 2 including Community •Visual Studio Code with C# extension •An OmniSharp-enabled editor: 23 • Atom • Emacs • Brackets • Sublime Text • Yeoman • Vim
  • 24. ASP.NET Core ~ What can you do? •ASP.NET • MVC Web Apps in C# • Web API apps • Console apps • .NET Core compatible class library •Signal R and Web Pages are coming after RTM 24
  • 26. ASP.NET Core MVC •One set of concepts – remove duplication •Web UI and Web APIs •Built on ASP.NET Core •Supports .NET Core •Runs on IIS or self-hosted •Deep integration with DI 26
  • 27. OWIN (Open Web Interface for .NET) • OWIN in an open, community owned specification • OWIN defines pluggable middleware and hosting • ASP.NET 4.5 and ASP.NET Core 1.0 both support OWIN
  • 28. Deployment portability •Two main models: • Portable Apps • Self-contained Apps 28
  • 29. Portable Apps •Default application type in .NET Core •Require .NET Core to be installed on the target machine •Your application is portable between installations of .NET Core •No need to decide upfront which OSes your app will run on 29
  • 30. Self-contained Apps •All app dependencies, including the .NET Core runtime, is part of the application •The app is larger, but also capable of running on any .NET Core supported platforms with the correct native dependencies •Need to make an explicit choice which platforms your application needs to run on during dev 30
  • 31. Setting Portability • Portable: • Self Contained: • Target .NET Core libraries in project.json • Remove any "type": "platform" properties • Add a runtimes node in your project.json • • 31
  • 33. What’s new in ASP.NET Core RC2? •.NET CLI (SDK) and IDE updates •Tag Helpers •IIS support baked in •Host RC2 apps in Azure App Service •Docker support with a new version of Docker Tools for Visual Studio 2015 33
  • 34. ASP.NET Core SDK 34 •The .NET Core SDK includes enough software to build an app •The SDK gives you both the .NET Core Tools and a copy of .NET Core •https://www.microsoft.com/net/core#windows
  • 35. Demo ASP.NET Core 1.0 from the SDK
  • 36. ASP.NET Core IDE •The best way to develop with .NET Core on Windows is to download the Visual Studio official MSI Installer and the latest NuGet Manager extension for Visual Studio •https://www.microsoft.com/net/core#windows 36
  • 37. Demo ASP.NET Core 1.0 from the IDE
  • 38. TagHelpers: Evolution of HTML Forms • HTML helpers expressed as tags Ex. Instead of: @Html.LabelFor(m => m.UserName, new { @class = "col-md-2 control-label" }) Write this: <label asp-for="UserName" class="col-md-2 control-label"></label> • Easier to customize with more attributes • Work seamlessly with the HTML editor • Markup now looks like HTML and it comes with full IntelliSense
  • 41. What about Entity Framework? •EF6.x most current and runs on .NET Framework 4.6 •Entity Framework 7 renamed to Entity Framework Core 1.0 •EF Core is a new code base that does not inherit all the features and API surface of EF6.x •EF6.x will continue to be a supported for some time 41
  • 42. When to use EF Core? •EF6.x will still be the most suitable choice for most applications •EF Core recommended for: • New applications that do not need features that are not yet implemented in EF Core • Applications that target .NET Core, such as Universal Windows Platform (UWP) and ASP.NET Core apps 42
  • 44. In ASP.NET 4.6 – Separate Stack
  • 45. In ASP.NET Core: API services are an ASP.NET Core feature
  • 46. Microsoft /web® Sample Read-only Model and Controller
  • 47. Microsoft /web® Read-only Controller Actions to return data

Editor's Notes

  1. Session goals: Explain what will be covered for the day Explain four foundational topics everyone needs to be familiar with to get started Visual Studio 2015 ASP.NET Core (previously know as ASP.NET 5) Package Managers – what they are, how they fit in with ASP.NET Azure – easy to sign up, activate MSDN benefits
  2. NuGet is similar to Maven .NET Core RC2 is supported on the following platforms. Red Hat Enterprise Linux 7.2 Centos 7.1 Debian 8.2+ Ubuntu 14.04 (16.04 support is coming at RTM) Linux Mint 17+ OS X 10.11 Windows 7+ / Windows Server 2012 R2+ Windows Nano Server TP5
  3. - The .NET Foundation includes representatives from, among others, Microsoft, GitHub, and Xamarin.
  4. npm is the default package manager for the JavaScript runtime environment Node.js. Bower is a package management system for client-side programming. Grunt is a JavaScript Task Runner. Gulp is a JavaScript automation tool. If you are using VS 2015 and ASP.NET 5, Visual Studio will install npm and gulp for you automatically.
  5. Source: http://bradfrost.com/blog/post/this-is-the-web/ Images are under Creative Commons Attribution License
  6. Source: http://bradfrost.com/blog/post/this-is-the-web/
  7. Source: http://bradfrost.com/blog/post/this-is-the-web/
  8. Key message: Differentiate the purpose and scenarios between .NET Framework and .NET Core. They Key point on .NET Core is that it’s self-contained and specialized on specific workloads. Make sure that we make the point that BOTH are valid. There is no decrease in investment on the .NET Framework side. Transition. There is a common shared layer to these 2 pieces ASP.NET Core is a new open-source and cross-platform framework for building modern cloud-based Web applications using .NET. ASP.NET 4.6 is the more mature platform. It's battle-tested and released and available today.
  9. Totally Modular – opt into the files you want Faster Development Cycles – no more compilation needed, just save and refresh Cloud – Seamless to the cloud Cross Platform for Windows, OS, and Linux Tools – Cross platform editing with VS Code Open Source – Totally OSS and open for contributions Fast – One of the fastest frameworks on planet
  10. This alignment means that a single .NET toolchain can be used for both .NET Core Console applications and ASP.NET Core applications. It also means that customers have more obvious control over the code that hosts and runs their ASP.NET Core app.
  11. Kestrel is a managed web server Startup defines what you want in your pipeline Middleware is asynchronous; Can write your own DI is built-in but can use Auto-Fac or Ninject Configuration: No web.config; can read from other sources like JSON or XML Identity for OAuth
  12. OmniSharp is a family of Open Source projects, each with one goal: To enable a great .NET experience in YOUR editor of choice VSCode is also an OmniSharp enabled editor
  13. - Unified web stack
  14. This slide introduces these features at a high level. The demo for these features is included in the next section.
  15. Anything bolded is a tag helper Uses HTML attributes instead of C#
  16. 1. We’ve seen how ASP.NET provides a common core which supports several different toolsets. 2. [click for first animation] On the left side, we have tools which produce HTML, which will be viewed in browsers by people. 3. [click for second animation] On the right, we have Web API, which produces other formats which are consumed by machines (represented by this happy robot) – JSON, XML, and other custom formats which are read by JavaScript code, other programs, other servers, etc.