Previously I made note of things about the release of Visual Studio 2010 beta 2 with regard to Silverlight development. I’ve gotten a few questions about if people should start using it for Silverlight development. Perhaps I can help provide you with the best information I can to make that decision…so here it goes.
Visual Studio 2010 and .NET Framework 4 both have “go-live” support as indicated in the license terms (which are available on the VS2010 download). If you have never bothered yourself with previous go-live products at Microsoft you may not understand what that means.
In short, “go-live” means we grant permission for you to use the product (in this case tools and framework) in a production environment. It also means that it is a supported product at that point as well. For Visual Studio, if you plan on using Visual Studio 2010 for go-live use, email firstname.lastname@example.org so you will be sure to get access to that support. You should also read the go-live license terms clearly and back-up your project data before upgrading. More information about go-live support can be found at Jeff Beehler’s blog post.
As with any software, pre-release or not, you should be aware of caveats and gotchas. I’ve found a few that you should be a ware of and am listing them below.
Installer errors if you have Silverlight RTW (40624) on your machine
If you are a developer and have already downloaded Silverlight 3 when it released, you probably have installed the Silverlight Tools for Visual Studio 2008 already. Now, if you never updated your tools to the later GDR (service packs) release, then you will encounter an error when installing VS2010 beta 2. This is because the most recent Silverlight 3 release (3.040818) SDK does not install on top of the initial release (3.040624) SDK. We know this and this should be remedied by VS2010 official release.
In the short-term, you need to perform a manual step to accommodate. You can do one of two things:
- Upgrade your Silverlight Tools for Visual Studio 2008 to the latest SDK and developer runtime.
- Uninstall the Silverlight 3 SDK and developer runtime.
The second is probably the easiest if you’ve already downloaded the Visual Studio 2010 beta 2 bits. Simply go to the Add/Remove Control Panel applet in Windows and remove the listings of Microsoft Silverlight 3 and Microsoft Silverlight 3 SDK. Then run the Visual Studio 2010 beta 2 installer.
Here is one thing that will be a gotcha. If you choose the Edit in Expression Blend action while in VS2010, and have Blend 3 installed, you will see that Blend will start but with this message:
Despite what the message says, when you decide to go ahead and open the unsupported project file you will be greeted with:
So there would be your first major caveat. Your VS2010 project files wouldn’t be able to be opened by Expression Blend 3. Now, I say this with caution because I’ve had some BASIC projects that have, and others that have not. Essentially it isn’t ‘supported’ but this will be one of those areas where your mileage may vary. This may cause you some slight discomfort when needing to tweak visual states or animations, among other things you may use Blend for (resource design, etc.).
Can it co-exist with Visual Studio 2008?
Yes, Visual Studio 2010 beta 2 can be installed side-by-side with Visual Studio 2008 SP1. This is how I’m running it now and they isolate well.
What about my VS2008 Silverlight project files?
If you open an existing VS2008 Silverlight project/solution, VS2010 will prompt you to upgrade the project file. Note that when you do so, VS2008 can no longer access that project file. So this means that you can’t have VS2008 and VS2010 working on the same project/solution files for your Silverlight projects.
This can be a bit of a snag in larger team developments where you have eager developers to want to get started on VS2010, but some still using VS2008 on the same project. Take caution here. You can try some of the same methods used in VS2005/2008 days in creating separate project/solution files for the products, but it’s a risky move if the project properties aren’t right.
So what about Silverlight 2 development?
You mean Sivlerlight ‘classic’? :-) Visual Studio 2010 does not support Silverlight 2 development. Yes I know in a previous post I showed multi-targeting with Silverlight 2 and 3. As it stands now though SL2 will not be a target for VS2010 development.
At this point any Silverlight 2 installed client should have been upgraded to Silverlight 3 if they were enabled for auto-update. Silverlight 3 provides so many more improvements over Silverlight 2 that you should really encourage moving even existing applications to the latest runtime to take advantage of some features.
So can I use it for Silverlight 3 development then?
Given the above known’s (and in general, the known issues with VS2010 beta 2 which are documented in the readme), yes you can use VS2010 beta 2 for Silverlight 3 development. As noted in my previous post, .NET RIA Services is not yet supported in VS2010). Again, the above issues might prevent you in your particular project, but I can say that VS2010 works well with Silverlight 3 development.
Of course your mileage may vary depending on the types of projects, dependencies, frameworks, etc. But I can confidently say “works on my machine.” :-)
Hope this helps.