ASP.NET 5 és ami mögötte van – a gyakorlatban Dr. Pócza Krisztián
What’s wrong with current ASP.NET? IIS-only System.Web dependency Based on slowly moving full-blown .NET Framework Resource intensive Hard to develop and optimize Complex
What is fixed? Webserver-independent System.Web – RIP Modular Full-blown .NET Framework + CoreCLR Low footprint, lightweight Platform independent (Windows, Linux, Mac) Fast development cycle – Roslyn Open source - https://github.com/aspnet/
Most important features Flexible cross-platform runtime – CoreCLR, ASP.NET 5 Modular HTTP pipeline – Middleware Configurability Unified programming model for MVC and (Web)API No rebuild required while development – Roslyn Built-in dependency injection No hosting environment-aware - Self-host, IIS, just HTTP.sys, Kestrel, etc. Latest version: beta 7, RTM – 2016 Q1
Rest of this presentation DEMO Showing features by code examples through a real world IoT platform application called Thriot Agenda IoT, Thriot architecture DN{VM,U,X} MVC API ASP.NET 5 components in std .NET apps and Linux
What is IoT and Thriot? Internet of Things Telemetry and M2M Devices & Platform Thriot http://portal.thriot.io/ https://github.com/kpocza/thriot/ http://central.thriot.io/ Ported from old ASP.NET MVC/WebAPI
The Architecture
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters, Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters, Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters, Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters, Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters , Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters , Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters , Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
DEMO DNVM, DNX, DNU, MVC, Project Structure, project.json, Startup.cs, Registering MVC, Controllers, Views, Taghelpers, Bower, Gulp, API, Services, Dependency Injection, Configuration, Middleware, like auth and CORS, Filters , Entity Framework 7, project.json, External Modules, NuGet, Classlib, wrap, Unit/Integration Testing, Build+Publish+Configuration, beta workarounds, ASP.NET 5 packages in Windows apps, Hosting on Linux
Thank you Q&A ASP.NET 5: http://www.asp.net/vnext https://github.com/aspnet/ Thriot: http://thriot.io https://github.com/kpocza/thriot @thriotIO Contact: kpocza@kpocza.net