Difference between silverlight tools, silverlight SDK, silverlight toolkit, silverlight development tools - silverlight

I'm installing a programming environment for Silverlight and trying to straighten out what needs to be installed, feedback is appreciated:
At http://silverlight.net/GetStarted, point number one allows you to install "Silverlight Tools for Visual Studio 2008 SP1". The book (Silverlight 2, Wiley) that I am reading seems to refer to this as the "Silverlight SDK".
Also at http://silverlight.net/GetStarted, point number four allows you to install "Silverlight Toolkit" which my book refers to as "Silverlight Development Tools".
So the way I understand it, there are only 2 things to install, the names just seem to not be consistent. Or are there really 3 or 4 different things to install?

You're correct:
- the first one refers to the actual SDK (along with documentation, Visual Studio templates and examples). You must install this one in order to develop a Silverlight 2 web application.
- the second one is a collection of controls and classes already coded and ready to be used in any Silverlight 2 web application. This one is not required but you can find it very useful since it's a community project, constantly mantained and updated with new features.

Related

Silverlight 5 Backward Compatibility

I have a Silverlight application developed with version 4.0. I tried running it with Silverlight 5 client and everything seems to be fine up to now.
But I am wondering; if my users installs Silverlight 5 for client, is it sure my application will still work well? Do I have to run all my Test Cases again?
If anyone notices something that has been broke between versions, please list it here! :)
Thanks
There's little evidence around the internet at the moment, other than that published by Microsoft, which can be found here and here, which states, to summarise:
Several changes have been made to the Silverlight runtime and the
Silverlight Tools between Silverlight 4 and Silverlight 5. For these
changes, the following principles apply:
Most Silverlight 4 applications will work with Silverlight 5 without
any changes.
When breaking changes are required, Silverlight will try to maintain
support for the old behavior, as well as the new behavior, by using a
quirks mode.
Nevertheless, some changes made to Silverlight components can
potentially cause your older Silverlight-based applications to fail
(compile time, XAML load time, or possibly design time) or to behave
differently.
And,
There are no known breaking changes between Silverlight 4 and
Silverlight 5 in the Silverlight core runtime. Applications that were originally compiled using Silverlight 4 tools, and that continue to target the Silverlight 4 runtime, should work without issues on a client that has the Silverlight 5 runtime.
If your project references any Silverlight SDK client assemblies [...] make sure that your project
specifically references the Silverlight 5 version of the SDK client
assemblies [...]. A project that targets Silverlight 5 cannot use the Silverlight
4 SDK assemblies.
There's more information in the links I provide, for instance, related to quirks mode, third party references, and behavioural changes.
I have a project with a Silverlight 4 tool used to display a barchart etc. The Project upgrade to VS2013 automatically upgraded to Silverlight 5 and there were no warnings. I worked on other areas of the project and only by chance did I actually run it in debug mode to find that the display was broken somewhere inside the tool. I managed to scamper back to VS2012 and scavenge the changes I had made in the VS2013 version of the project.

Silverlight 3 and Silverlight 4 Coexistance

I work on several projects with different development environments. I would like to maintain a Visual Studio 2008/Silverlight 3 environment on the same development workstation as a Visual Studio 2010/Silverlight 4 environment. If possible, I would like to be able to work on both at the same time, without using virtual machines.
Has anyone done that successfully? Is there anything special I need to do to help them coexist? I previously installed Silverlight 4, and it prevented me from working in the Visual Studio 2008/Silverlight 3 environment. But it is possible that I did something wrong in the setup.
I don't think the two can coexist next to each other. You will either need to make a VM with the specified configuration, or specify the SL version in Visual Studio.
Can you ellaborate why you can't run you SL3 project in VS 2008?
Could you use VS 2010 for your SL3 work? VS 2010 includes multi-targeting capabilities, and is compatible with Silverlight 3 out of the box. SL4 support is added with the SL4 development tools, so at that point it supports both.
You can pick which Silverlight version you want each project to be either at project creation time (for new projects), or in the project Properties (for existing projects).

A good Silverlight 3.0 reference application, with source?

Having never written a production quality Silverlight app, I am looking to find a quality open source reference application for Silverlight 3.0 (Silverlight 4.0 is no good as I have VS2008) to help learn Silverlight.
Ideally I'd like to see:
a line of business application, in the client-server tradition.
SQL Server back end
no use of 3rd party libraries like PRISM or CSLA as I would like to see how the core Silverlight technologies work.
I realise there are plenty of open source projects on Codeplex, but struggled to find any classic line of business apps there.
This is a really good one:
http://timecard.codeplex.com/
The following does use Prism, but you can learn a lot from it. It even shows localization:
http://happynet.codeplex.com/
In all honesty, get yourself upgraded to VS 2010. If you are serious about becoming a professional in Silverlight development, version 4 has the most bang-for-your-buck.
Not all the newer technologies are supported for Silverlight 3 and all the latest cool tutorials and project examples tend to be in VS2010/SL4.
You also should not ignore patterns like MVVM and libraries like Prism & MEF as they are rapidly becoming commonplace for Silverlight projects. There is more danger of you getting into Win-forms-style bad habits if you use a Win-forms style approach to Silverlight at first.
Here is a simple explanation of MVVM for Silverlight:
http://openlightgroup.net/Blog/tabid/58/EntryId/89/Silverlight-View-Model-Style-An-Overly-Simplified-Explanation.aspx
These videos are a good introduction to creating/understanding Prism-based projects, specifically for Silverlight:
http://channel9.msdn.com/posts/mtaulty/Prism--Silverlight-Part-1-Taking-Sketched-Code-Towards-Unity/
It includes him building an Outlook-style application using prism (with full source provided).
The codeplex project, full source and documents etc, for Prism and soon MEF is here:
http://compositewpf.codeplex.com/wikipage?title=Getting%20Started&referringTitle=Home
Prism was created by Microsoft and will soon have a final release of version 4 (including MEF).

how to setup VS 2010 to allow debugging of Silverlight 3 and Silverlight 4

I have some code which is in Silverlight 3. I am unable to move to SL4 at this time.
I would however like to use VS 2010 to do my SL 3 development... and SL4 development.
The idea of both runtimes coexisting on 1 machine i thought I heard Microsoft got
right this time in VS 2010.
is this correct?
if yes, then Where can I find the instructions how to set this up?
thanks for any help you can provide,
Sincerely,
J
Silverlight is not side-by-side. VS 2010 provides multi-targeting support for the full .NET framework, which is side-by-side, but NOT Silverlight.
There can only be one version of the Silverlight plugin and runtime on the machine.
That said, if you want to build code targeting one or the other, that is possible by checking in the Silverlight versions to your source enlistment. This post is a little outdated but provides an example for doing this for SL2 and SL3.

Can we still develop Silverlight 2 applications

I've inherited a set of Silverlight 2 applications (new job), one of which needs upgrading. We can do the updates in code without problems, but the available dev machines all appear to be running Silverlight 3.
I can't seem to find Silverlight 2 tools for download any more - is there a way to multi-target Silverlight the same way we can multi-target older versions of the main CLR?
thanks
Toby
There's really no reason to multitarget Silverlight. Unlike CLR, there isn't a side-by-side story: people run the latest version.
There's still an argument to develop for Silverlight 3, so go ahead and use the Silverlight 3 development tools - your Silverlight 2 apps should work just fine.
There may be some extremely limited, controlled environments without Internet or IT connectivity with Silverlight 2, but I'd expect that to be vary rare in my opinion. In such a case you could use MSBuild to build Silverlight 2 (even if you have newer bits on your machine) by placing the build tasks in your enlistment and redirecting from the standard SDK: http://www.jeff.wilcox.name/2009/03/sxs-sl2-sl3-building/
Here are the Silverlight 2 tools for Visual Studio 2008 SP1. You won't be able to developer Silverlight 2 apps in VS2010: http://www.microsoft.com/downloads/details.aspx?FamilyId=c22d6a7b-546f-4407-8ef6-d60c8ee221ed&displaylang=en

Resources