.NET Core Fall update
By: Maxime Rouiller
@ Novaweb Solutions
ASP.NET/.NET Core 1.0 Release
Timeline
• November 2015: Move from Startup.cs  Program.cs
• February 26th: Microsoft acquires Xamarin
• April 15th : .NET Standard is introduced
• May 23rd news about project.json and tooling
• June 27th .NET Core is released to 1.0, Tooling in Preview
• September 13th First update. .NET Core 1.0.1
Startup.cs  Program.cs
• ASP.NET Core isn’t just ASP.NET anymore.
• First real move toward .NET Core.
• Program.cs with main(…) function added to the ASP.NET
templates/projects
Xamarin Acquisition
• Focus of .NET Core changes
• Not just ASP.NET and Console apps anymore
• .NET Core is UWP now.
• Code written on Core could be reusable anywhere from OSX/Linux to
Mobile (Android/iOS)
.NET Standard
• Each standard defines a base API
• Next generation of PCL
• Versioned. Higher version supports lower versions.
• netstandard
• 1.0 = Windows Phone Silverlight
• 1.1 = Windows Phone 8/.NET 4.5
• 1.2 = Windows/Phone 8.1 / .NET 4.5.1
• 1.3 = .NET 4.6
• 1.4 = .NET 4.6.1 / UWP
• 1.5 = .NET 4.6.2
• 1.6 = .NET Core 1.0/Xamarin/Mono
.NET Standard difference with PCL
• netstandard defines a set of API
• PCL describes platforms and you have “profiles” that say which
platform your platform support
• Example:
• Newtonsoft:
• From: portable-net45+wp80+win8+wpa81+dnxcore50
• To: netstandard1.0
Project.json
• It’s dead.
• Back to csproj
• But they’re keeping the good stuff.
• No more file lists in csproj
• Don’t require/need VS
• No more prompts when csproj is changed outside VS
• Nuget from csproj
• Multiple target frameworks from csproj
• Project.json is going to be removed in future tooling release
.NET Core hit 1.0
• New url: http://dot.net
• Performance: 5.12m/sec (plaintext), 0.37m/sec (MVC/JSON)
• Breaking changes:
• JSON now camelCased.
• Updated templates.
• Where’s gulp?
Tooling Preview
• BundlerMinifier
• Not a replacement for gulp.
• More of a System.Web.Optimization story rather than a gulp replacement
• Still no real bundling solution.
• Linters added: ESLint, CSSLint, TSLint, CoffeeLint
• Microsoft Azure AppService officially ready for .NET Core
Why was gulp removed?
• Speed
• Heavy on IO
• Auto-deployment on Azure was
VERY slow
Is gulp dead?
• From the templates? Yes
• From Visual Studio? No.
.NET Core Release 1.0.1
• No breaking changes. Please update!
• Microsoft.EntityFrameworkCore
• Bug fixes (lots of them! perf, and non-working scenarios)
• Microsoft.AspNetCore.Server.Kestrel
• Bug fix
• Microsoft.AspNetCore.Mvc
• Now works on FIPS-compliant machines
• Security Advisor issue fixed  (Singleton are bad)
• HTTP Verb Mapping error fixed
• Microsoft.AspNetCore.Antiforgery
• FIPS-compliant fix
• Microsoft.AspNetCore.Routing
• Fixed attribute routing errors
What to expect next?
• Full removal of project.json by the time tooling hits RTM
Questions

.Net Core Fall update

  • 1.
    .NET Core Fallupdate By: Maxime Rouiller @ Novaweb Solutions
  • 2.
  • 3.
    Timeline • November 2015:Move from Startup.cs  Program.cs • February 26th: Microsoft acquires Xamarin • April 15th : .NET Standard is introduced • May 23rd news about project.json and tooling • June 27th .NET Core is released to 1.0, Tooling in Preview • September 13th First update. .NET Core 1.0.1
  • 4.
    Startup.cs  Program.cs •ASP.NET Core isn’t just ASP.NET anymore. • First real move toward .NET Core. • Program.cs with main(…) function added to the ASP.NET templates/projects
  • 5.
    Xamarin Acquisition • Focusof .NET Core changes • Not just ASP.NET and Console apps anymore • .NET Core is UWP now. • Code written on Core could be reusable anywhere from OSX/Linux to Mobile (Android/iOS)
  • 6.
    .NET Standard • Eachstandard defines a base API • Next generation of PCL • Versioned. Higher version supports lower versions. • netstandard • 1.0 = Windows Phone Silverlight • 1.1 = Windows Phone 8/.NET 4.5 • 1.2 = Windows/Phone 8.1 / .NET 4.5.1 • 1.3 = .NET 4.6 • 1.4 = .NET 4.6.1 / UWP • 1.5 = .NET 4.6.2 • 1.6 = .NET Core 1.0/Xamarin/Mono
  • 7.
    .NET Standard differencewith PCL • netstandard defines a set of API • PCL describes platforms and you have “profiles” that say which platform your platform support • Example: • Newtonsoft: • From: portable-net45+wp80+win8+wpa81+dnxcore50 • To: netstandard1.0
  • 8.
    Project.json • It’s dead. •Back to csproj • But they’re keeping the good stuff. • No more file lists in csproj • Don’t require/need VS • No more prompts when csproj is changed outside VS • Nuget from csproj • Multiple target frameworks from csproj • Project.json is going to be removed in future tooling release
  • 9.
    .NET Core hit1.0 • New url: http://dot.net • Performance: 5.12m/sec (plaintext), 0.37m/sec (MVC/JSON) • Breaking changes: • JSON now camelCased. • Updated templates. • Where’s gulp?
  • 10.
    Tooling Preview • BundlerMinifier •Not a replacement for gulp. • More of a System.Web.Optimization story rather than a gulp replacement • Still no real bundling solution. • Linters added: ESLint, CSSLint, TSLint, CoffeeLint • Microsoft Azure AppService officially ready for .NET Core
  • 11.
    Why was gulpremoved? • Speed • Heavy on IO • Auto-deployment on Azure was VERY slow
  • 12.
    Is gulp dead? •From the templates? Yes • From Visual Studio? No.
  • 13.
    .NET Core Release1.0.1 • No breaking changes. Please update! • Microsoft.EntityFrameworkCore • Bug fixes (lots of them! perf, and non-working scenarios) • Microsoft.AspNetCore.Server.Kestrel • Bug fix • Microsoft.AspNetCore.Mvc • Now works on FIPS-compliant machines • Security Advisor issue fixed  (Singleton are bad) • HTTP Verb Mapping error fixed • Microsoft.AspNetCore.Antiforgery • FIPS-compliant fix • Microsoft.AspNetCore.Routing • Fixed attribute routing errors
  • 14.
    What to expectnext? • Full removal of project.json by the time tooling hits RTM
  • 15.