.Net Core

Post on 09-Jan-2017

112 views 0 download

Transcript of .Net Core

.NET CORE

17.11.2016 - Gökhan Çamaş

.Net Core

Agenda• What is .Net Core? (What is Not?)

• Architecture

• Mono vs .Net Core

• ASP.NET Core

• Platform Supports

• Limitations

• Roadmap

• Demo

• Should I Stay or Should I Go?

.Net Core

What is .Net Core?• Open source development platform maintained by Microsoft and .Net

Community on Github. (https://github.com/dotnet/core)

• Cross-platform; supporting Windows, macOS and Linux

• Compatible with .NET Framework, Xamarin and Mono, via the .NET Standard Library

• The C# and F# (VB is coming) can be used to write apps and libraries

• Flexible deployment with Docker support.

.Net Core

.Net Framework ≠ .Net Core

.Net Core

Architecture

.Net Core

Architecture

.Net Core

Architecture

.Net Core

Mono vs .Net Core• .Net Core is not based on Mono.

• Mono supports a subset of the .NET Framework app-models (for example WinForms), .NET Core doesn’t support.

• Mono supports large subset .NET Framework APIs using same assemblies. .NET Core needs own compiled version.

• Mono is focused on mobile platforms in recent years, .NET Core is focused on cloud.

.Net Core

ASP.NET Core

.Net Core

ASP.NET Core• No longer based on System.Web.dll. It is based on a set of granular and

well factored NuGet packages.

• Simply a console app that creates a web server in its Main method.

• Includes a managed cross-platform web server, called Kestrel, that you would typically run behind a production web server like IIS or nginx

• Doesn’t yet have some critical modules, such as WebSocket and SignalR

.Net Core

Platform SupportsOS Version Architecture

sConfigurations

Windows Client 7 SP1 - 10 x64, x86

Windows Server 2008 R2 SP1 - 2016 x64, x86 Full, Server Core, Nano (2016 only)

Red Hat Enterprise Linux 7.2 x64

Fedora 23 x64

Debian 8.2 x64

Ubuntu 14.04 LTS, 16.04 LTS x64

Linux Mint 17 x64

openSUSE 13.2 x64

Centos 7.1 x64

Oracle Linux 7.1 x64

Mac OS X 10.11, 10.12 x64

.Net Core

Limitations• Windows technologies such as WPF, WinForms not exist

• Some key features such as WebSocket, SignalR, Security not yet exist in ASP.NET Core. (in Roadmap)

• Reflection usage changed, old codes must be modified.

• App Domains, Remoting, Binary Serialization, Sandboxing not exist anymore.

.Net Core

Roadmap.NET Core

Planned 1.1 Features (Published in 16.11.2016)• Lots of bug fixes• Support for more popular OS’s/distro’s

Planned 1.2 Features• .NET Standard 2.0 Support

.Net Core

RoadmapASP.NET Core

Planned 1.1 Features (Published in 16.11.2016)• URL Rewriting middleware• Response caching middleware• Response compression middleware• DI improvements for 3rd party containers• WebListener server (Windows only)• Middleware as MVC filters• ViewComponents as Tag Helpers• View precompilation• Cookie-based TempData provider• Improved Azure integration

◦ App Service startup time improvements◦ App Service logging provider◦ Azure Key Vault provider

Planned 1.2 Features• WebSockets• SignalR• Razor Pages (Views without MVC controllers)• Web API security

.Net Core

DEMO

.Net Core

Should I Stay or Should I Go?

.Net Core