What’s New in ASP.NET 5 (vNext)? SoftUni Team Technical Trainers Software University Lean.NET stack for building modern web apps.

Slides:



Advertisements
Similar presentations
What’s New in ASP.NET 5 and Visual Studio 2015 SPENCER SCHNEIDENBACH GADELLNET CONSULTING SERVICES.
Advertisements

The Future of Web WakeUpAndCode.com.
(formerly ASP.NET vNext) Lean .NET stack for building modern web apps
Evolutie vs Revolutie Chris de Kok Evolutie vs Revolutie.NET 2015.NET 4.6 ASP.NET 5 -> MVC 6 Visual Studio 2015 C# 6.0 Agenda.
ASP.NET vNEXT & development tools Marco De
Introduction to Programming
AngularJS Routing Routes, Route Parameters, Templates, Location, Navigation SoftUni Team Technical Trainers Software University
AngularJS Services Built-in and Custom Services SoftUni Team Technical Trainers Software University
Software University Curriculum, Courses, Exams, Jobs SoftUni Team Technical Trainers Software University
Fundamentals SoftUni Welcome to Software University SoftUni Team Technical Trainers Software University
Project Tracking Tools Trello, Asana, Basecamp, GitHub Issue Tracker, TRAC SoftUni Team Technical Trainers Software University
AngularJS Directives Defining Custom Directives SoftUni Team Technical Trainers Software University
Software Testing Lifecycle Exit Criteria Evaluation, Continuous Integration Ivan Yonkov Technical Trainer Software University.
Fundamentals SoftUni Welcome to Software University SoftUni Team Technical Trainers Software University
Design Patterns: Structural Design Patterns
Composer packages Installing and Using Composer, Packagist, Packaging your code Mario Peshev Technical Trainer Software University
Consuming REST Services from C# SoftUni Team Technical Trainers Software University
Start Your Own Blog Angel Georgiev Part-time Trainer angeru.softuni-friends.org Software University The Culture of Knowledge Sharing.
Entity Framework Performance SoftUni Team Technical Trainers Software University
Microsoft Azure SoftUni Team Technical Trainers Software University
Svetlin Nakov Technical Trainer Software University
Build Processes and Continuous Integration Automating Build Processes Software University Technical Trainers SoftUni Team.
1 CONFIDENTIAL.NET FEATURES OVERVIEW C# 6 ASP.NET 5 DNX PROJECT ASP.NET MVC 6 EF 7 A UGUST 4, 2015.
Processing Redis with.NET How to Operate with Redis Databases SoftUni Team Technical Trainers Software University
Project Tracking Tools Trello, Asana, Basecamp, GitHub Issue Tracker, TRAC Angel Georgiev Part-time Trainer Software University
Test-Driven Development Learn the "Test First" Approach to Coding SoftUni Team Technical Trainers Software University
Trainers Team Ivan Yonkov Rated in the top 7% at Stack Overflow
AMD and RequireJS Splitting JavaScript Code into Dependent Modules Software University Technical Trainers SoftUni Team.
Asynchronous Web Services Writing Asynchronous Web Services SoftUni Team Technical Trainers Software University
Scott Hunter Principal Group Program Manager, App ASP.NET 5.
Controls, Widgets, Grid…
Jekyll Static Site Generator Template-Based Site Generation Svetlin Nakov Technical Trainer Software University
Web Development Tools Tools for Front-End Developers Writing HTML and CSS Code SoftUni Team Technical Trainers Software University
ASP.NET SignalR SoftUni Team Technical Trainers Software University
Session Information Goals CTAs Customer Evidence TBD
Responsive Design Design that Adapts to Different Devices SoftUni Team Technical Trainers Software University
Processing JSON in.NET JSON, JSON.NET LINQ-to-JSON and JSON to XML SoftUni Team Technical Trainers Software University
Design Patterns: Structural Design Patterns General and reusable solutions to common problems in software design Software University
Advanced C# Course Introduction SoftUni Team Technical Trainers Software University
Reflection Programming under the hood SoftUni Team Technical Trainers Software University
Mocking with Moq Tools for Easier Unit Testing SoftUni Team Technical Trainers Software University
ASP.NET 5 Unleashed Javier Lozano
Mocking with Moq Mocking tools for easier unit testing Svetlin Nakov Technical Trainer Software University
JavaScript Tools Tools for Writing / Editing / Debugging JavaScript Code Svetlin Nakov Technical Trainer Software University
Test-Driven Development Learn the "Test First" Approach to Coding Svetlin Nakov Technical Trainer Software University
Sets, Dictionaries SoftUni Team Technical Trainers Software University
JavaScript Applications Course Introduction SoftUni Team Technical Trainers Software University
ASP.NET Core* 1.0 The Future of Web Apps Shahed Chowdhuri
Doctrine The PHP ORM SoftUni Team Technical Trainers Software University
Microsoft Ignite /28/2017 2:36 PM
Web Storage and Cookies Cookies, Local and Session Storage SoftUni Team Technical Trainers Software University
Stacks and Queues Processing Sequences of Elements SoftUni Team Technical Trainers Software University
Deploying Web Application
Building production ready APIs with ASP.NET Core 2.0
ASP.NET Integration Testing
Mocking tools for easier unit testing
Entity Framework: Relations
Caching Data in ASP.NET MVC
ASP.NET MVC Introduction
ASP.NET Core* 1.0 The Future of Web Apps Shahed Chowdhuri
Extending functionality using Collections
Lean .NET stack for building modern web apps
MVC in ASP.NET Core: The new kid on the block
Explore web development with Microsoft ASP.NET Core 1.0
Microsoft Build /11/2018 2:12 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Microsoft Ignite NZ October 2016 SKYCITY, Auckland
Building Modern Web Apps with ASP.NET MVC 6
ASP.NET 5 és ami mögötte van – a gyakorlatban
#01# ASP.NET Core Overview Design by: TEDU Trainer: Bach Ngoc Toan
What’s ASP.NET 5 and Why? Scott Hunter | Director of Program Management Scott Hanselman | Principal Program Manager.
Presentation transcript:

What’s New in ASP.NET 5 (vNext)? SoftUni Team Technical Trainers Software University Lean.NET stack for building modern web apps

2  Introduction to ASP.NET 5  What is Different in ASP.NET 5?  Rewritten, Flexible, Cross-Platform  Middlewares and IoC built-in  Grunt and Bower in ASP.NET 5 templates  View Components  Web API in ASP.NET MVC 6  Entity Framework 7  ASP.NET WebForms 4.6 Table of Contents

Introduction to ASP.NET 5

4  Lean.NET stack for building modern web apps  Built from the ground up  Unified programming model that combines MVC, Web API, and Web Pages  Consists of modular components with minimal overhead  Open source in GitHub from the beginning   Changes based on customer requests and feedback Introduction to ASP.NET 5

5  New flexible and cross-platform runtime  New modular HTTP request pipeline  Cloud-ready environment configuration  Ability to self-host or host on IIS  Ability to see changes without re-building the project  Side-by-side versioning of the.NET Framework  New tools in Visual Studio 2015 Introduction to ASP.NET 5

What is Different in ASP.NET 5?

7  In the past, the.NET Framework was delivered as a single, all- encompassing installation  Features were added but rarely removed  The size of the framework continually grew  ASP.NET 5 can be run on:  Full.NET CLR – 200 MB, update everything  Best for backward compatibility  Core CLR (cloud-optimized runtime) – 11 MB  Include only those features that you need  Cross-Platform CLR – Not ready, yet. Use Mono. Flexible, Cross-Platform

Different Runtimes ASP.NET 5 (CLR) and ASP.NET Core 5 (CoreCLR)

9  By default, new Visual Studio projects use the full.NET CLR  You can specify the Core CLR in the configuration properties for your project Choosing Runtime

10  ASP.NET 5 – Faster Development Cycle  Features are shipped as packages  Use just features needed  Framework ships as part of the application  Zero-day security bugs patched  Same code runs in development and production  Edit code and refresh browser  Develop with VS, third-party or cloud editors Flexible, Cross-Platform (2)

11  The ASP.NET 5 applications can be deployed on IIS or can be self- hosted (in own process)  If Core CLR is used every single dependency is bundled within the deployment package  Not dependent on.NET framework version  Different versions of.NET side-by-side  Different applications may work on different runtime versions  To run different versions, you must target the Core CLR Host Anywhere

12  Faster startup times  Lower memory  The platform (ASP.NET 5) is modular  You can turn features on and off as you want Better Performance

13  ASP.NET 5 introduces a new, lightweight way to manage dependencies in your projects  No more assembly references  Instead referencing NuGet packages  project.json file Package Management

14  Improved HTTP performance  New HTTP request pipeline that is lean and fast  The new pipeline also supports OWINOWIN  You choose what to use in your application  By registering middlewares Middlewares public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerfactory) ILoggerFactory loggerfactory){ app.UseErrorHandler("/Home/Error"); app.UseErrorHandler("/Home/Error"); app.UseStaticFiles(); app.UseStaticFiles(); app.UseIdentity(); app.UseIdentity(); app.UseMvc(routes =>...) app.UseMvc(routes =>...)}

15  Create middleware class  Register in Startup.cs (IApplicationBuilder) Custom Middleware public class AppHeaderMiddleware { private readonly RequestDelegate next; private readonly RequestDelegate next; public AppHeaderMiddleware(RequestDelegate next) { public AppHeaderMiddleware(RequestDelegate next) { this.next = next; this.next = next; } public async Task Invoke(HttpContext context) { public async Task Invoke(HttpContext context) { context.Response.Headers.Append("X-Application", "ASP.NET 5"); context.Response.Headers.Append("X-Application", "ASP.NET 5"); await this.next.Invoke(context); await this.next.Invoke(context); }} app.UseMiddleware<AppHeaderMiddleware>(); // Register before app.UseMvc(...);

Custom Middleware Live Demo

17  Made cloud-ready  Configuration, session and cache  No code changes for cloud environments  Dependency injection is built into ASP.NET  Register services in Startup.cs Other Improvements public void ConfigureServices(IServiceCollection services) { services.AddScoped (); } services.AddScoped (); }

IoC in ASP.NET 5 Live Demo

19  Visual Studio 2015 is integrating with Bower  Similar to NuGet for client side packages  JS libraries and CSS packages  Integrating with Grunt  Provide build tasks for client-side purposes  Similar to MS Build for the client side  Compile LESS, SASS  Bundling  Minification, etc. Grunt and Bower in ASP.NET 5

Grunt/Gulp and Bower Live Demo

21  Similar to partial views, but much more powerful  Something like mini-controller  Responsible for rendering a chunk  Some examples for view components usage:  Dynamic navigation menus  Tag cloud  Login panel  Recently published articles  Sidebar View Components

22  Consists of two parts:  The class (derived from ViewComponent )  The Razor view located in:  /Views/Home/Components/SideBar/Default.cshtml  /Views/Shared/Components/SideBar/Default.cshtml  More information  View Components (2) public class SideBarViewComponent : ViewComponent { public IViewComponentResult Invoke(int numbers) { public IViewComponentResult Invoke(int numbers) { return View(); return View(); }}

View Components Live Demo

24  MVC, Web API, and Web Pages are merged into a single framework called MVC 6  This merging removes duplication  In ASP.NET MVC 5 there are overlapping features with different implementations  MVC routing – System.Web.Mvc.Routing  WebAPI routing – System.Web.Http.Routing  Currently only MVC and WebAPI are unified  Web Pages will be added in a later release Web API in ASP.NET MVC 6

Live Demo

26  New platforms (in addition to.NET)  Windows Phone, Windows Store  ASP.NET 5 (.NET core)  Mac and Linux  New data stores (in addition to relational)  Non-relational data stores  Not a magic abstraction but option to use common EF functionality in all data stores  SQL Server, SQLite, Azure Table Storage, Redis, In Memory (for testing)  Entity Framework 7

27  HTTP/2  Roslyn Code Dom Compilers  Leverage the new C# 6 features  Async Model Binding (Leverage EF async) ASP.NET WebForms 4.6

28  Introduction to ASP.NET 5  What is Different in ASP.NET 5?  Web API in ASP.NET MVC 6  Entity Framework 7  ASP.NET WebForms 4.6 Summary

? ? ? ? ? ? ? ? ? What’s New in ASP.NET 5?

SoftUni Diamond Partners

License  This course (slides, examples, demos, videos, homework, etc.) is licensed under the "Creative Commons Attribution- NonCommercial-ShareAlike 4.0 International" licenseCreative Commons Attribution- NonCommercial-ShareAlike 4.0 International 31  Attribution: this work may contain portions from  "ASP.NET MVC" course by Telerik Academy under CC-BY-NC-SA licenseASP.NET MVCCC-BY-NC-SA

Free Software University  Software University Foundation – softuni.orgsoftuni.org  Software University – High-Quality Education, Profession and Job for Software Developers  softuni.bg softuni.bg  Software Facebook  facebook.com/SoftwareUniversity facebook.com/SoftwareUniversity  Software YouTube  youtube.com/SoftwareUniversity youtube.com/SoftwareUniversity  Software University Forums – forum.softuni.bgforum.softuni.bg