asp.net core vs. asp.net 4

24

Upload: trannhan

Post on 14-Feb-2017

342 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ASP.NET Core vs. ASP.NET 4
Page 2: ASP.NET Core vs. ASP.NET 4

ASP.NET Core vs. ASP.NET 4.6

.NET Framework .NET CoreFull .NET Framework for any scenario and

library support on Windows

Modular libraries & runtime optimized for

server and cloud workloads

Page 3: ASP.NET Core vs. ASP.NET 4

.Net Core

Page 4: ASP.NET Core vs. ASP.NET 4

.NET Core is a general purpose development platform maintained by Microsoft and the .NET community on GitHub.

It is cross-platform, supporting Windows, macOSand Linux, and can be used in device, cloud, and embedded/IoT scenarios.

On .Net Core

Page 5: ASP.NET Core vs. ASP.NET 4

Flexible deployment: Can be included in your app or installed side-by-side user- or machine-wide.

Cross-platform: Runs on Windows, macOS and Linux; can be ported to other OSes.

Command-line tools: All product scenarios can be exercised at the command-line.

Open source: The .NET Core platform is open source, using MIT and Apache 2 licenses. Documentation is

licensed under CC-BY. .NET Core is a .NET Foundation project.

Supported by Microsoft: .NET Core is supported by Microsoft, per .NET Core Support

Compatible: .NET Core is compatible with .NET Framework, Xamarin and Mono, via the .NET Standard

Library.

On .Net Core

Page 6: ASP.NET Core vs. ASP.NET 4

.Net Standard

Page 7: ASP.NET Core vs. ASP.NET 4

Solves the code sharing problem for .NET developers

A set of APIs that all .NET platforms have to implement

.NET Standard 2.0 will be implemented by .NET Framework,

.NET Core, and Xamarin.

.NET Standard will replace Portable Class Libraries (PCLs) as the tooling story for building multi-platform .NET libraries.

On .Net Standard

Page 8: ASP.NET Core vs. ASP.NET 4
Page 9: ASP.NET Core vs. ASP.NET 4
Page 10: ASP.NET Core vs. ASP.NET 4

Platform

NameAlias

.NET

Standardnetstandard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0

.NET Core netcoreapp → → → → → → 1.0 vNext

.NET

Frameworknet → 4.5 4.5.1 4.6 4.6.1 4.6.2 vNext 4.6.1

Mono/Xam

arin

Platforms

→ → → → → → → vNext

Universal

Windows

Platform

uap → → → → 10.0 → → vNext

Windows win → 8.0 8.1

Windows

Phonewpa → → 8.1

Windows

Phone

Silverlight

wp 8.0

Page 11: ASP.NET Core vs. ASP.NET 4
Page 12: ASP.NET Core vs. ASP.NET 4

New dual-train strategy for .NET Core releases:

“Long Term Support (LTS)” and “Current Release”.

.NET Core 1.1 RTM, the first “Current” release

New OS Support in 1.1:Linux Mint 18OpenSUSE 42.1macOS 10.12 (also added to .NET Core 1.0)Windows Server 2016 (also added to .NET Core 1.0)

But: Tooling for both 1.0 and 1.1 is still preview

There are two distributions of .NET Core: a Runtime, and an SDK that includes the Runtime and some Tools.

On .Net Core releases

Page 13: ASP.NET Core vs. ASP.NET 4

News flash: There are 1380 new APIs in .NET Core 1.1.

News flash: ASP.NET Core 1.1 with Kestrel was ranked as the

fastest mainstream fullstack web framework in

the TechEmpower plaintext benchmark.

News flash: Google Cloud is joining the .NET Foundation

Technical Steering Group. Welcome, Google!

Page 14: ASP.NET Core vs. ASP.NET 4

ASP.NET Core vs. ASP.NET 4.6

.NET Framework .NET CoreFull .NET Framework for any scenario and

library support on Windows

Modular libraries & runtime optimized for

server and cloud workloads

Page 15: ASP.NET Core vs. ASP.NET 4

A new lightweight open-source and cross-

platform framework for building cloud-

based Web applications using .NET

ASP.NET Core

Page 16: ASP.NET Core vs. ASP.NET 4

ASP.NET Core Design

Choose your Editors

and Tools

Open Source

with ContributionsCross-PlatformOSS

Seamless transition

from on-premises to cloud

Faster Development CycleTotally Modular

Fast

Page 17: ASP.NET Core vs. ASP.NET 4

HostingKestrel

MiddlewareRouting, authentication, static files, diagnostics, error handling, session, CORS, localization, and YOUR OWN

Dependency Injection

Ships entirely as Nuget

Cross Platform Support

Configuration

Logging

Application Frameworks – MVC, Identity, SignalR

ASP.NET Core Features

Page 18: ASP.NET Core vs. ASP.NET 4

Built on ASP.NET Core

One set of concepts – remove duplication

Web UI and Web APIs

Supports .NET Core

Runs on IIS or self-hosted

Deep integration with DI

ASP.NET Core MVC

Page 19: ASP.NET Core vs. ASP.NET 4

Let‘s build something: TechSummit Wichtel

Images courtesy of DailyClipArt.net

Page 20: ASP.NET Core vs. ASP.NET 4

.NET Core become .csproj/MSBuild based

• Customers wanted their projects to be able to work with existing .NET code they already had

• Interop with existing .NET projects (Project to project references)

• Taking the best features of project.json and moving them into .csproj/MSBuild.

• .NET Core tools are now based on the same technology as other .NET projects. (Proven scalability)

.NET Core csproj support is now available as an alpha release.Preview 3-based SDK, using CSProj: 1.1.0-sdk-msbuild

Preview 2-based SDK, using project.json: 1.1.0-sdk-projectjson

.NET Core is integrated into Visual Studio 2017 RC and Visual Studio for Mac. It can be added to Visual Studio Code by the C# extension. The new Tools release can be used with both the .NET Core 1.0 and .NET Core 1.1 runtimes.

Watch out! Changes ahead!

Page 21: ASP.NET Core vs. ASP.NET 4

What is not changing

One project file – Your project file contains dependency and target framework information, all in one file. No source files are listed by default.

Targets and dependencies — .NET Core target frameworks and metapackagedependencies remain the same and are declared in a similar way in the new csprojformat.

.NET Core CLI Tools – The dotnet tool continues to expose the same commands, such as dotnet build and dotnet run.

.NET Core Templates – You can continue to rely on dotnet new for templates (for example, dotnet new -t library).

Supports multiple .NET Core version — The new tools can be used to target .NET Core 1.0 and 1.1. The tools themselves run on .NET Core 1.0 by default.

Page 22: ASP.NET Core vs. ASP.NET 4

ASP.NET

Build for Windows

Use Web Forms, SignalR, MVC, or Web Pages

One version per machine

Develop with Visual Studio using C#, VB or F#

Mature platform

High performance

Which one is right for me?

ASP.NET Core

Build for Windows, Mac, or Linux

Use MVC, or Web API

Multiple versions per machine

Develop with Visual Studio or Visual Studio

Code using C#

New platform

Ultra performance

Page 23: ASP.NET Core vs. ASP.NET 4

The ASP.NET Core and Entity Framework, C# and VB docs were

moved to docs.microsoft.com as part of the last release:

https://docs.microsoft.com/aspnet

Check out the .NET Web Development and Tools Blog:

https://blogs.msdn.microsoft.com/webdev/

Docker Images: https://hub.docker.com/r/microsoft/dotnet/

Read more

Page 24: ASP.NET Core vs. ASP.NET 4