This is Part 1 of a 2-part series where we would be discussing improvements of ASP.NET Core when moving from ASP.MVC. Part 2 would be a deep dive topic where detailed performance improvements report would be discussed and shared with the crowd.
1. Moving ASP.NET MVC to
ASP.NET Core
Patrick Oliveros
Microsoft MVP Visual Studio and Development Technologies
Lessons, Experiences, Considerations
2. who am i?
• software developer for > 10 years
• corporate and startup environments
• microsoft mvp for visual studio and
development technologies for
• formerly as an asp.net/iis mvp
• strong interest in developing web
applications
• working on the backend, mostly
• performed application website migrations
3. agenda
• Overview of ASP.NET Core
• Why Move?
• Demo
• ASP.NET MVC vs. ASP.NET Core
• Differences
• Tools
• Lessons
• Considerations
• Questions
4. disclaimer
This material was prepared using RC1 (Release Candidate
1) of ASP.NET Core 1.0. As such, some content might be
changed or possibly be irrelevant or re-implemented
different from what would be presented.
6. when will rc2 come?
• TL;DR - "the guts are changing for the better and it's taking
longer than we thought it would to swap out the guts.“
• Key high-level themes:
• Replatform on top of the .NET CLI
• Movement to a new netstandard*
• Polishing
• Stress, security, performance
• Performance optimization
10. which to choose?
To be clear, ASP.NET 4.6 is the more mature platform. It's battle-tested
and released and available today. ASP.NET Core 1.0 is a 1.0 release that
includes Web API and MVC but doesn't yet have SignalR or Web Pages. It
doesn't yet support VB or F#. It will have these subsystems some day but
not today.
- Scott Hanselman
(http://www.hanselman.com/blog/ASPNET5IsDeadIntroducingASPNETCore10AndNETCore10.aspx)
11. moving your application
Rewrite Migrate
Replace Reuse
https://blogs.msdn.microsoft.com/goto100/2008/11/03/rewrite-vs-migrate-vs-reuse-vs-replace/
12. should we upgrade?
Rewrite Migrate
Replace Reuse
Business
Value
Application Quality
Low High
Standard
Custom
18. why move?
• Because it is cool! (cross platform, etc)
• Performance benefits
• Desire for platform/server agnostic hosting
• Independent from other applications
• Portability
• Cost considerations
• Visual Studio is expensive!
• Windows (10) is expensive!
• I already have existing Linux hosting options
19. considerations
• If in case you’re still with ASP.NET Web Forms
o never mind.
o seriously.
• No tooling that will move existing ASP.NET MVC
projects/solutions to the new structure
• MVC application is in Visual Basic .NET
• Consumes 3rd party tools
• Non-cross platform is still an option
• Breaking/platform changes
20. if you’re curious
• get.asp.net
• tooling
• ide
• tools
• runtime
• docs.asp.net
• your bible
• patience