Biggest Suprises in Silverlight 3
While Scott Guthrie (et al.) are going to give you the big list of what is new in Silverlight 3, let me point you at a number of hidden gems in the Silverlight 3 release (some of which are new to the release, and some of which have been there since the beta):
Where is the Silverlight ASP.NET Control?
The Silverlight 3 SDK/Tools no longer ships with the ASP.NET controls (Silverlight and Media). There are a number of reasons for this (and I still think that Silverlight.js + Object tag is the way to go), but if you need it, you can find it on Microsoft’s Code Site:
Improved Text Rendering
A common complaint with Silverlight has been its poor font rendering, especially at small size. In the release, you can see this new rendering using ClearType.
Blend now offers an SDK that is installed with Blend 3 (or can be downloaded separately). The primary reason for this is that some of the features are really Blend features (like Behaviors). So using the Blend SDK will allow you to build your own Behaviors without the need to have Blend installed.
In the beta you could tell your Silverlight 3 project that you wanted to cache the Microsoft assemblies which created links to Microsoft.com for downloading the SDK assemblies (the ones not in the plugin). While this was great, in the release these assemblies are now stored on your own servers. This will cause a bit less caching but it opens up the opportunity to cache your own assemblies as well. I’ll have a demo of this in an upcoming blog post.
Client HTTP Stack
In the release, they’ve supplied a new Client HTTP stack. Normally all network calls go through the browser’s HTTP stack. But this stack has some limitations like the inability to do PUT and DELETE verbs and limited access to headers. The new client-based stack allows you to opt-in to using the new stack. Unless you need specific functionality in the client stack, its recommended you continue to use the browser stack as that way you will still use the cookies/session id from the browser session (so that things like forms auth “just work”). I’ll expand on this topic in a blog post soon too.
There are more interesting nuggets to find in the bits, but hopefully this has given you a taste…