Scott Hanselman

New Tools and New Content - ASP.NET, Visual Studio 11 Web and .NET 4.5 Developer Preview (with commentary)

September 16, '11 Comments [48] Posted in ASP.NET | ASP.NET Ajax | ASP.NET MVC | IIS | Mobile
Sponsored By

ASPNET_vNextWhile all of you Build attendees are making me feel bad because you have a fancy Tablet and I don't (sell me yours!) the folks over here in the "Angle Brackets Team" (I'm trying out some new names. One will stick.) have been busy.

Here is a summary of all the items from our team that have been announced and shown at Build this week, all of this will be publicly available today (9/16) along with a some narrative and asides from yours truly.

They are listening

One of the things I am am personally enjoying in working daily with this build of Visual Studio is that there's dozens (hundreds) of little "mental speed bumps" that are smoothed over. A lot of thought was put into workflow and common scenarios in order to, well, get out of a developer's way.

Another constant source of happiness on my part is the team's realization that not everyone can upgrade their Visual Studio, so you can round trip your projects and solutions. I can use Visual Studio 11 Developer Preview and open a .NET 4 application, save the project, and then open it in Visual Studio 2010 and it'll just work. As it always should have. Teams can mix and match and the beta guy can  be wacky without checking in solution files that will break the other folks.

By the way, have you seen our new org chart?

Our new org chart

Big Aside: Changing how we release software

Scott Aside: It's also worth noting that while there is a bunch of stuff in the next version of Visual Studio, there's an equally compelling amount of stuff being released from the Azure/Web Team on NuGet. This gets to my LEGO analogy where we developers have more choice of what we snap together. Most importantly many things will only live on NuGet. I'm looking at the possibility of  NuGet Feed of Supported Microsoft Products. Folks sometimes assume that NuGet is a place to throw binaries up because it's convenient, but we also need a way to know if a NuGet package is actually a support product, kind of like "Verified" is on Twitter. I'm interested in your thoughts on this in the comments, or even better, in the Discussion Tab on the NuGet project site.

Shipping via NuGet is also significant because it helps level the playing field with Open Source libraries. Microsoft's open source libraries will "compete" for our developer-attention by all being in NuGet, and folks should use the ones that make them happy. If you want to use Microsoft's Ajax Minifier or any of a half dozen others, then just get the one you want from NuGet. Microsoft's won't ship out of the box. It'll be on NuGet.

Visual Studio 11 Developer Preview

A new Solution ExplorerTuesday the "Windows 8 Express" version of Visual Studio was released with the Windows 8 Developer Preview release which supports Windows 8 development. Wednesday during the keynote with Satya Nadella,  Scott Guthrie, Jason Zander  Visual Studio 11 Developer Preview and .NET 4.5 were announced. The bits are available today to the public.

ASP.NET 4.5 Developer Preview includes new core functionality like WebSockets, anti-XSS encoding, granular request validation. It also includes Web Forms improvements like model binding, support for HTML5 and unobtrusive JavaScript. And there have many performance improvements in ASP.NET when combined with Windows 8 Server can decrease startup time by 30% and reduce the memory footprint by 30%.

Scott Aside: I continue to put gentle pressure on all the teams about semantic versioning. In this case, .NET 4.5 is the right version number. It's using the .NET 4 CLR and is an additive (with bug fixes) release to .NET 4. Because it does that, it's very compatible. Your existing .NET 4 stuff won't (shouldn't) break. Check out the Target framework dropdown in this version of Visual Studio. See how you can target from 2.0 to 4.5 with the same IDE? That will be useful for corporate customers who need to develop 2.0 apps but still want the IDE improvements.
All the frameworks from 2 to 4.5 living together in a single dropdown. I never thought I'd see the day.

Visual Studio 11 Developer Preview includes new lots of new functionality including full editor support for CSS 3, full editor support for HTML 5, full editor support for JS, and many niceties like how Web Forms events can be wired up in source view, Web Forms designers can be launched directly from source view, how Live Inspector (code named "Eureka") makes editing the HTML of your document live much easier by automatically finding the HTML in your document as you select it in the Browser and much more.

Scott Aside: They've leveled the playing field across all the editors so things like regions, collapsing hierarchies, commenting, formatting, etc are all the same between CSS, JS, HTML and code. One more reason to just turn off all your foolbars and embrace the text editor and code.

You can read more about all the new features that are enabled in this release by reading the What's new in ASP.NET 4.5 and Visual Studio Web Developer whitepaper here: http://www.asp.net/vnext/whats-new.

NuGet 1.5 w/Dev11 Support Released

We just published an update to NuGet 1.5 that supports Visual Studio 11 Developer Preview. This allows developers on the Preview builds to continue to use NuGet with the preview releases of Visual Studio.

Note: NuGet does not support the "Windows 8 Express" release that was released yesterday. Support was just recently added to that SKU of Visual Studio and will appear in the next public preview release of "Windows 8 Express".

You can download the new release here: http://www.nuget.org/

ASP.NET 4.5

There's a lot of new improvements in ASP.NET and WebForms in particular in this coming release. ScottGu is doing a series and has done these posts already:

Model Binding will be familiar to MVC folks ,as is Routing. Both features now existing in both WebForms and MVC. So much time is spent in WebForms pulling data out of the request, via Forms, or QueryStrings, or Controls. Sometimes it seems like 30% of my WebForms code is just moving data from the Request into a variable. Now I can do this:

public IQueryable<Product> GetProducts(
[QueryString("q")]string keyword,
[Control("categories")]int? categoryId)
{
IQueryable<Product> query = _db.Products;

if (!String.IsNullOrWhiteSpace(keyword))
{
query = query.Where(p => p.ProductName.Contains(keyword));
}

if (categoryId.HasValue && categoryId > 0)
{
query = query.Where(p => p.CategoryID == categoryId);
}

return query;
}

This method supports a GridView that can sort, filter by category, and search via URL. Note the use of a nullable int as well. It makes WebForms code a lot cleaner, and it's just one example.

Scott Aside: ASP.NET 4.5 is additive to ASP.NET 4, so your existing apps will run, of course, but you can just start using these new features once you're using 4.5. I've been able to "refactor via subtraction" and yank out a bunch of tedious monkey code.

One other thing I wanted to say. It's becoming clearer to me that it's less about WebForms or MVC or WCF WebAPI Services or OData or IHttpHandlers or SingalR and more about ASP.NET. I used to call mix-and-match apps "hybrid" applications, but now I'm realizing they are just ASP.NET applications. I'll use whatever LEGO piece(s) I want and you should also.

MVC 4 and Web Pages 2 Developer Preview Released

The new responsive design of the MVC4 HTML5 default templateASP.NET MVC 4 Developer Preview is the latest release of our MVC framework. This release includes built-in support for mobile sites, new, fresh HTML5 project templates as well as jQuery Mobile. It has enhanced support for asynchronous methods, and custom code generation.

Also included are Web Pages 2 (like MVC with the V and C in the same file) a lightweight framework for creating dynamic, data-driven websites. The latest version expands support for mobile devices and for integrating client scripts, and adds helpers for tasks like mapping. You can download the new release for Visual Studio 2010 and Visual Studio 11 here: www.asp.net/mvc/mvc4

Scott Aside: Web Pages is what Rob and I used to make http://thisdeveloperslife.com and I'll be doing http://hanselminutes.com over again in Web Pages in the next week or so. If you love Razor just want a simple site, write code, hit F5, and deploy, WebMatrix and Web Pages is a nice change of pace. Also, the fact that they were able to integrate node.js into WebMatrix is not only cool but it brings up interesting questions about WebMatrix and what is can be used for. You can do PHP on it too, you know. Hm.

WCF 4.5 Developer preview AND "Web API" shipping out of band on .NET 4 and up!

Introduced Wednesday as part of .NET 4.5, includes new core WCF functionality like WebSockets, UDP multicast, improved streaming and better async support leveraging  Tasks and C# async improvements. We continued our commitment to simplicity with a number of configuration improvements (read "reductions"), making WCF throttles and quotas work for developers by default, better manageability. The WCF Client programming model is included in .NET Core profile available to Windows-tailored app developer.

Scott Aside: I've used WCF for years, begrudgingly. It is powerful, no one would disagree, but it's notoriously complex and scary. I'm impressed with what they've done in this release because they've effectively used the infinite configurability of WCF and pluged in a re-imagination of what WCF works like in a world of REST and JSON. When it's time for WS-* and the Enterprise, that part of WCF is still there, but when you move to the RESTful open web of 2011-2012, the new Web API is clean and light, nicely integrated with ASP.NET and able to create simple and lightweight web services using things like JSON and conventions that make sense.

RIA with HTML5/JavaScript

Dinesh announced the developer preview for RIA for JS/HTML5 in his BUILD talk. It's a set of jQuery plugins that let you easily work with server data on the client. By bridging the different tiers, RIA/JS lets you quickly build rich forms-over-data applications with HTML/JQuery. The libraries are available via RIAServices.jQuery NuGet package as well as codeplex. The WCF RIA Services for Silverlight were also updated via WCF RIA Services V1.0 SP2 and WCF RIA Services Toolkit Aug 2011 update.

Scott Aside: RIA was another project that I had checked out very early on and said, meh. I'm zero for two on judging their projects because the WCF team has embraced jQuery, JSON and a more open web in a big way. I'm impressed with their efforts and open attitude. Take a look at their "BigShelf" starter project and check out how they are using jQuery to retrieve and bind, filter and sort data on the client side. Again, fewer black boxes since it's all HTML and JavaScript. Be sure to scroll down on that page as it's a complete walkthrough.

Here's a rollup of other related links for you, Dear Reader, with downloads at the very bottom.

Announcement Links

Download Links

Enjoy!

About Scott

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.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by ORCS Web
Friday, September 16, 2011 9:41:17 PM UTC
Best org chart graphic evar.
Ian Patrick Hughes
Friday, September 16, 2011 9:57:36 PM UTC
I had my wife sit down and watch the Metro session given by Jensen Harris.I wanted to explain to her that the future isn't about touch, or 3D, or anything like that, it is about innovative adaptation to the human experience. It is rather lazy to say that this conf was all about tech; as it was more than that, it was about the fundamental shift in our understanding and perception of technology and the devices we love. I am a HUGE fan of everything that MS is doing right now, and that definitely isn't always the case.
Friday, September 16, 2011 9:59:04 PM UTC
Thanks, that was nice and informative. Although was not announced at BUILD, can we add WebMatrix 2 Beta to the list above? Would make a great reference.
Yaser
Friday, September 16, 2011 10:12:16 PM UTC
Great summary of all the new stuff, thanks! I didn't want to try MVC 4 and VS.NET 2011 until release, until I read this post.

Let's get it on with!
Friday, September 16, 2011 11:21:51 PM UTC
Speaking of version numbers I'm a little confused, is c# 5 part of .net 4.5?
Saturday, September 17, 2011 12:38:02 AM UTC
Nice! Glad to see I can run both 2010 and 11 side by side. :)
Saturday, September 17, 2011 1:50:10 AM UTC
So... is windows forms officially dead?
Girotto
Saturday, September 17, 2011 2:09:07 AM UTC
My prayers have been answered: " I can use Visual Studio 11 Developer Preview and open a .NET 4 application, save the project, and then open it in Visual Studio 2010 and it'll just work"

What about 3.5?
JR
Saturday, September 17, 2011 2:44:42 AM UTC
I can't find .NET 4.5 or VS 11 for Vista is Vista not supported
Saturday, September 17, 2011 7:38:21 AM UTC
Hi Scott,

Excellent article - very interested in the jQueryRia stuff but links do not seem to work - tried IE & Chrome

Still think the message from MS is not absolutely clear as a Silverlight developer (and as someone who teaches RIA using SL) I think there is plenty of good news from Build but Silverlight does seem like a taboo word these days from MS

Mike
Saturday, September 17, 2011 12:01:15 PM UTC
Can you open Visual Studio 2008 projects without converting them?
Saturday, September 17, 2011 2:19:11 PM UTC
This improvements, Will probably make the people at the bank i do consulting for, to switch from oldie Visual Studio 2011++.

My internet sucks so I am still waiting to see a couple of things (namely, the vs6 conversion, and the MVC improvements, oh and of course the javascript/css integration)
Saturday, September 17, 2011 6:55:43 PM UTC
Is this VS11 Preview installable on Win7 or does it require the Win8 preview too?
Saturday, September 17, 2011 8:35:29 PM UTC
My 2 cents on NuGet "Supported MSFT Packages": Yes, please.

I would go further and have a way to differentiate released/unreleased, supported/unsupported, and "product line". As an example of what I mean by "product line" here's a quote from this blog post: "The WCF RIA Services for Silverlight were also updated via WCF RIA Services V1.0 SP2 and WCF RIA Services Toolkit Aug 2011 update." Are those both released? Supported? Do I already have an earlier version? I see this as very similar to your drive to have reasonable version numbers for releases.

I'd also like a way to "NuGet-ize" an existing project. Iterate my project's references, locate the equivalent NuGet packages, and then present a UI offering to make them NuGet references.

I'd like to start using NuGet, but I don't for these reasons.
Saturday, September 17, 2011 9:30:45 PM UTC
Big question, since you're the only place that's even discussing it..

I'm running VStudio C# Express 2010 on the Win8 Dev preview (cause I'm an XNA programmer.. And I thought that Xbox Live was being integrated into this dang thing?), but I can't publish my files! I'm getting this weird "Can't find setup.bin" error.. Anyone able to help?
Sunday, September 18, 2011 1:25:35 AM UTC
Three points:

1) Please get the C# team to call the C# compiler that will ship with .Net 4.5 "C# 4.5" instead of "C# 5" :)

2) Is there a chance that NuGet will be shipped in the box with VS11? I wouldn't mind if it stays a VSIX and is updated as it is today, but it would just be great if I knew that EVERY VS11 installation will have NuGet there, unless someone went through the pain to uninstall it.

3) NuGet has its own PowerShell window. It would be nice if at some point VS would have ONE official PowerShell prompt for lots of stuff, and NuGet would just be one of potentially many extensions that plug into that.
davidacoder
Sunday, September 18, 2011 11:27:24 AM UTC
Visual Studio 11 looks really promising! Now if only I could find a 8gb+ usb to install Dev Preview...
Sunday, September 18, 2011 9:50:37 PM UTC
Enough with the Lego analogy already
Sunday, September 18, 2011 11:13:15 PM UTC
Probably the most easily consumable summary I've seen. Glad to hear I can run it side-by-side with 10.
Monday, September 19, 2011 1:50:16 AM UTC
You can install the developer release via running the setup found in the iso file (still needs to be mounted)
run x:\Sources\setup.exe from windows 7 and it will install ontop of windows (optionally keeps old windows folder with simple rename)

This way you don't need to beg borrow or steal a 8GB USB stick.

Only warning. DONT install NVIDIA drivers as windows 8 will crack it!
Monday, September 19, 2011 9:07:07 AM UTC
Thanks for this post Scott,

My expectations are about ASP.NET MVC 4 :) Looks like cool, especially mobile envorionments.

When will release?
Monday, September 19, 2011 12:32:31 PM UTC
One more reason to just turn off all your foolbars and embrace the text editor and code.


Foolbars? I can't tell if that's intentional or a misspelling, but either way I like the new name!
Monday, September 19, 2011 2:15:01 PM UTC
Thanks for this post Scott,
AWESOME, I'm very excited to try VS 2011.
Monday, September 19, 2011 2:22:17 PM UTC
One thing I would like to see is an improved installer. Currently you can choose about 10 things to install, but the installer will dump about 30 things in your add/remove program list.

Why not mak Development Stuff a single entry, and all the other stuff sub entries?
Mike
Monday, September 19, 2011 9:04:49 PM UTC
Will WebForms also include built-in support for mobile sites, new, fresh HTML5 project templates as well as jQuery Mobile? Thanks.
Don
Tuesday, September 20, 2011 12:01:25 AM UTC
Will ASP.NET 4.5 WebForms have an equivalent to the MVC 4 html helper for maps?
Steve
Tuesday, September 20, 2011 12:36:53 PM UTC
So you have only two employees and a clown run whole org.
developer
Tuesday, September 20, 2011 1:07:08 PM UTC
installing VS 11 broke my VS 2010 install. VS 11 also failed to open any of my MVC 3 projects. Now my .Net framework(s) are corrupt and I have to reinstall Win 7...
Tuesday, September 20, 2011 1:20:35 PM UTC
Installed VS 11, opened VS2010 solution, closed solution. Open solution in VS2010 and...

"The selected file is a solution file, but was created by a newer version of this application and cannot be opened"

W...T...F.

Open .sln file in notepad, change:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 11

to

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010


FIXED.

Where do I send my invoice?
Steve
Tuesday, September 20, 2011 2:52:05 PM UTC
I was able to open a 2010 solution in 2011, then back again without a problem. However the new project I created in 2011 gave me "...project is incompatible...". Setting the target .NET version back to 4.0 from 4.5 fixed it up.
Tuesday, September 20, 2011 4:55:38 PM UTC
developer - There's a few more people. ;)

Brad - Right, because a fresh project is a .NET 4.5 one and VS2010 doesn't know about those.

Jonathan - Dev11 should work just fine side by side. If you are seeing an issue, email me please and I'll get you help.

Steve - Sounds like you are using VS2010, but haven't updated to VS2010SP1? The roundtripping works between dev10sp1 and dev11.

Mike - Ya, I've been telling them that. It's a mess currently.

Tuesday, September 20, 2011 5:03:06 PM UTC
Scott,

Thanks but I had almost nothing on my pc and a reimage was faster then more troubleshooting :)

I ran the fx cleanup tool per an MSDN article but that didn't help. I also problem Steve had (before it quite working) and I did have SP1 installed.
Tuesday, September 20, 2011 5:16:22 PM UTC
Jonathan - I'm very sorry that happened. Let me know if you have more trouble and if I can help.
Tuesday, September 20, 2011 5:18:24 PM UTC
Scott - Next I'll ask Scott Gu first. Just kidding. :)

I've always enjoyed your blog and your keynotes, keep up the awesomeness.
Thursday, September 22, 2011 10:28:52 PM UTC
All good stuff.

".NET 4.5 is the right version number"

Why .NET 4.5 instead of .NET 4.1? What if you want to release again as major version 4 before major version 5: what do you call it, .NET 4.75? Or have you already decided that there won't be another major version 4?

Or is this yet another marketing gimmick? Are you afraid that if people only see a single minor point increase that they will think there is nothing substantial in it?
David Nelson
Friday, September 23, 2011 1:56:39 AM UTC
David - In this case, there's a good amount of stuff in it, not just bug fixes. There's performance increases, multi-proc JIT, memory layout changes, etc. It's more than a 4.1. I think 4.5 felt right. There could certainly be a 4.8 someday.
Friday, September 23, 2011 4:43:03 AM UTC
ASP.Net 4.5 seems to have a few new interesting and useful features. Thanks!
Friday, September 23, 2011 2:00:19 PM UTC
I guess it just feels odd because I can't think of any other product that versions it's releases that way. The version is a sequence number; the scale of the release is reflected in which version number you increment, not in how far you increment it.

Nevertheless, it's not nearly as bad as the .NET 3.0 or 3.5 versioning fiascos, so I think I'll live :)
David Nelson
Friday, September 23, 2011 8:19:09 PM UTC
Hello Scott,

Nice post as always. Microsoft.NET 4.5 and other tools look very promising.

Going to install developer preview this week.

Best Regards,
Jalpesh Vadgama
Monday, September 26, 2011 7:55:58 AM UTC
good weblog. thanks for this wonderful posting. i have fun here lots.
Friday, October 07, 2011 9:52:40 PM UTC
Scott any chance the testing tools are going to be updated and customizable? http://social.msdn.microsoft.com/Forums/en/vsmantest/thread/7a37c712-75e4-46e6-bac4-810e85020612
Kelly Zetter
Tuesday, October 11, 2011 10:38:32 PM UTC
Scott. The manual testers out there really want to use Test Professional it's just too painful and limited in 2010....I sure hope that 2012 gets some much needed love. The coming unit testing stuff is great for devs....hopefully the testers will get some serious love.
Kelly Zetter
Saturday, October 29, 2011 8:00:18 AM UTC
Is there any change in Entity Framework in this version?
Saturday, October 29, 2011 8:53:26 AM UTC
Wow!

Thanks Scott. I had been waiting for .NET 5, and here comes version 4.5 Beta. The wait is set to end.

When is it being launched?

Any other links to go through for some useful reading material?

Cheers
Vishal Khanna
dotnetuncle.com
Friday, December 09, 2011 5:48:38 PM UTC
please do not more new version in .NET .BECAUSE very hard to learn .net 4.0 version because i have start my project in .net 4.0,
and now in market new version 4.5 how can i manage,
punit
Friday, December 09, 2011 11:15:52 PM UTC
4.5 is improvements to 4.0. If you learn 4.0 you will be in a good position with 4.5. Don't worry.
Thursday, February 02, 2012 6:08:08 AM UTC
thanks a lot. Very helpful post. Most of stuff is the ones I have already been using but if MVC4 Apps will made available through 1ManDay.com is very perfect
Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.