ASP.NET vNext - August 2014 Status Rollup
Work on the next version of ASP.NET continues. It's a world of Alpha software, Git commits, breaking changes, and daily builds. If you're not one for risk, this blog post is for you. Read about all the fun stuff that's going on, and install nothing. If you do like a little spice in your life, jump in and install some early builds and join this active and opinionated community.
Introducing ASP.NET vNext
We announced vNext in May and did some great talks at TechEd.
- The Future of .NET on the Server: ASP.NET vNext content and videos from TechEd 2014
- Deep Drive: .NET vNext on the Server
ASP.NET vNext has number of notable features, including, but not limited to:
- Open Source from the start and runs on Windows, Mac, and Linux.
- No "build to disk" step, just refresh and go with runtime in-memory compilation from the Open Source Roslyn compiler.
- Optional cloud optimized local install the CoreCLR that runs great in Azure.
- Want to use a Mac and Sublime rather than Windows and VS? Sure.
- No strong naming, no dependency on System.Web
- Dependency injection everywhere
- side-by-side runtimes (one app can't hurt another, get your own versions of everything)
- NuGet Packages easy to bring in the new project.json system. But, you can also swap in the source for your favorite libraries!
Since then we've seen the release of betas of the next version of Visual Studio, like Visual Studio "14" CTP 3. This version of VS includes the ASP.NET vNext alpha 3 packages plus initial tooling. The project system is changing and this VS14 build includes Intellisense for the new Project.json files.
- ASP.NET and Web Development vNext Updates. This CTP includes all the Visual Studio 2013 Update 3 web tooling improvement and ASP.NET vNext alpha 3 runtime packages. It has improved tooling support for ASP.NET vNext, such as support for build configuration and support for unit tests, and it no longer includes content and compile items inside “.kproj” file. ASP.NET vNext includes an updated version of the RyuJIT JIT compiler. For details, please read the full post on the .NET Web Development Tools blog.
Separate from ASP.NET vNext, this build of VS14 also includes .NET Native, C++ updates, Shared Projects, as well as little things like retina icons for HiDPI displays.
Scaffolding for ASP.NET vNext
ASP.NET vNext is very modular and will include customizable command-line scaffolding . As with all of ASP.NET vNext, it's easy and alpha, but we've got blog posts up showing you how to get started with scaffolding. We've also got details on how to customize (of course) scaffolding for your personal needs.
ASP.NET vNext on a Mac
Sure, why not? We're working on a Sublime Text 3 plugin at https://github.com/ligershark/Kulture that means you'll be able to develop ASP.NET vNext apps in your favorite IDE. There's a quick YouTube video here.
There's also some clever community members with C# Intellisense working! The LEGO pieces are snapping together nicely.
This is just a taste, there's more coming that WILL surprise you
What else is possible?
- Folks have the Nancy framework running on ASP.NET vNext and OSX.
- Why not F# in ASP.NET vNext?
ASP.NET vNext going forward...Alpha 3
David Fowler has some great Alpha 3 details on his blog that cover some architecture changes and explains some choices. ASP.NET vNext apps get their own copy of the CLR/BCL when deployed, but this is a hassle when developing. So, ASP.NET vNext apps can use a Global NuGet repository (this is NOT the GAC, relax.)
Apps can also opt in to new C# 6 features easily with a quick change to project.json.
Again, this is all happening in the open on GitHub at https://github.com/aspnet, so check out the last milestone's issues here: https://github.com/aspnet/KRuntime/milestones/1.0.0-alpha4
I'm sure I missed something. Sound off in the comments!
Sponsor: Many thanks to my friends at Raygun for sponsoring the feed this week. I *love* Raygun and use it myself. It's amazing. Get notified of your software’s bugs as they happen! Raygun.io has error tracking solutions for every major programming language and platform - Start a free trial in under a minute!
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.
Very much like the direction of CoreCLR/Roslyn but I have developed a perhaps unhealthy addiction to System.Numerics.Vectors and Microsoft.Bcl.SIMD
Is the IDE WebMatrix dead? We don't hear anything about it anymore...
Can someone clarify this for me of point to somewhere where I can read up about it?
I believe this should be "no build", because there is still a compilation process going on...
As for future plan with regards to .NET framework in general and with regards to .NET technologies one can use to develop desktop apps - see presentation of Habib Heydarian from last US TechEd:
The Present and Future of .NET in a World of Devices and Services
The Next Generation of .NET for Building Applications
A few questions (and I apologize if some of these questions are too basic for the audience here):
1) Is ASP.NET vNext an off-shoot of the .NET Framework or is it the next version of THE framework? i.e., .NET 3.5 -> .NET 4 -> .NET 4.5 -> .NET vNext?
2) "Open Source from the start and runs on Windows, Mac, and Linux." Is this support for a sub-set of classes in .NET or will everything work? For example, the System.IO Namespace - can we write some code that writes some files out to the disk and have it work on all 3 platforms?
3) If the .NET Framework and .NET vNEXT are two separate entities, when new versions of the Framework is released, will vNext get support, as well?
1. I test ASP.net vNext on 4 major Linux versions since June and the biggest problem is fast moving target (vNext) being kept in sync with another fast moving target - mono. But it works. From the perspective of .net/mono developer - this is just netfx 4.5. vNext will add c# v6 and better packaging - start small - no more System.Web. nuGET what you need.
2. System.IO works on Linux and Mac and to some extent on iOS and Android. There are some problems how different OSes interpret current dir or root or how many roots (forest).
@Stephen Brannan: WPF, WF, WWF are technologies based on .net, but they have nothing to do with ASP.net vNext. Here is how I explain it to others: ASP.net (and other MS teams) picked up the great ideas from other technologies (node.js and other)
- start small (minimal apps to get hello web or mvc running)
- lasagne (OS, middleware, app) OS will be irrelevant, middleware server/host (IIS, Apache, nginx or nowin, kestrel) will be the matter of choice and requirements
- package manager: get what you need npm =kpm
- runtime choice (cloud, non-cloud, non-windows = mono)
- revival of "deployment by xcopy" - "kpm pack" will pack your app together with runtime and even if you don't have appropriate version of runtime on server (netfx or mono) your app will work
there is so much more... Those guys are doing great job
I have tons of Qs too. Go and visit https://jabbr.net/#/rooms/AspNetvNext
This means no bin deployable core framework/self hosting options will be available for WebForms.
Plus above all this my understanding is that you will need .NET 4.5.1 for bin deployable core framework to work anyway.
So essentially WebForms applications will always depend on the full framework. On the assumption that Mono continues to implement all of the needed area's of the full framework I would assume this would also make WebForms applications cross platform...
Would someone kindly point me in the right direction?
Getting this running on Linux would improve my life somewhat.
Thanks for listening to our rants on your "Aint your pappa's MS" article, and actually doing something about it.
Now, if only Jetbrains would release a C#/.NET IDE...
vNext team is doing awesome job. I've been following vNext since it's announced.
By when it's expected to go live, so we can start using in Production?
Comments are closed.