I was watching an introductory video on ASP.NET 5 and MVC 6 from Jon Galloway of Microsoft on ASP.NET 5. One of the things he talks about is the new performance benchmarking suite for ASP.NET 5, which on a simple response.write test shows that ASP.NET 5 using Kestrel rather than IIS is 10 times faster on this test that 4.6 on his laptop.
ASP.NET 5 / MVC 6 Mind Blowing New Features?
This is an interested introductory video, there were a few things that totally blew my mind:
- MVC 6 does not use .csproj files, it has a wwwroot folder instead for all public files. All other files are considered private.
- The Html Helpers (that I love) have been changed to use asp- markup (which I am sure I will also love in time)…
- There is no web.config, apart from the odd time you see it configuring IIS, if IIS is being used in your project. This is replaced by a “Secret Store” and Startup.cs in the code.
- It appears to be getting even closer to the metal than MVC up to 5 did, with lots of interesting web options. Basically Microsoft are saying if the web supports it they want to support it. Real easy.
- The new Roslyn compiler allows you to break, change code, and continue when debugging.
- MVC and WebAPI are now merged in MVC 6, previously MVC was dependant on System.Web, which was not the case with WebAPI 2.
- There are three choices for developers, ASP.NET 4.6, ASP.NET 5 and ASP.NET Core with MVC 6. The last one is cross platform, installable from nuget. Oh and its cross platform, works on Linux and Mac as well. Who would have thought it? I don’t know how the latest Windows servers compare with Linux, Linux on Azure the last time I looked wasn’t super fast – real Linux ran this wordpress site far faster than Azure ever did (maybe the MySql database option I was using). However long ago Linux was far faster than Windows, in the sense it could multi task better and handle more workload by a large factor. I don’t know if this gap has closed or not in recent years, but for sure this kind of thing will put Microsoft under pressure for Windows to keep up, which has to be a good thing.
New Tag Helper Markup
So tag helper markup will in future look like this:
<form anti-forgery="true" validation-summary="true" action="Create">
<legend>Log in Form</legend>
<span validation=for="Name" style="color:blue"/>
A useful links from this video:
I’ll be spending quite a bit of time this year with ASP.NET 5, MVC 6 and all the latest web goodies, so I am sure to blog more about this in future. If anybody would like me to blog about specific parts of ASP.NET 5, MVC 6 and related technologies, please comment on the blog, all requests considered.
I have to say… just what is going on at Microsoft? Have I died and gone somewhere else? I know they have been producing so many good things in recent years that have been really difficult to keep up with and that the developers there have come of age and understand real world things like dependencies and the importance of code readability rather than how to produce a really slick demo app that doesn’t scale very easily. What an exciting time to be a developer!