Go Ahead....Make your life easy.

What is Silverlight DS?

SilverlightDS is a group of classes that encapsulate all the necessary functionality so that developers can easily use web services (or any other type of transport layer) and get data inside Silverlight.

What's so special about SilverlightDS?

SilverlightDS simplifies many of the mundane steps required to get any data into a silverlight application. Due to a complete integration with MS DataSet object, all the CRUD work is taken care on the server side. Once you get the data, the SilverlightDS object helps you easily bind it to your controls.

So in a nutshell, SilverlightDS provides:

  1. Complete integration with the Microsoft DataSet Object.
  2. Simpler row creation, deletion and updates.
  3. Nested grid support
  4. Custom Columns
  5. Speedy loading of data.
  6. Auto Incrementer support.
  7. Linq support
  8. Complete seperation from the transport layer
  9. Strongly typed values for data binding.
  10. Simplified Fetching, updating, saving and deleting.
  11. Lookup Relationships!

Strongly Types Values

Let’s explore the strong data typing briefly here. Simply put, if your data is any base type, integer, string, Boolean, etc from the database record set, than that is the type the column will be in the SilverlightDS Datatable. If the column is later defined as a value from another table, the SilverlightDS will handle creating references to the foreign table and map the objects correctly.

LINQ Support

One of the major features is the support of LINQ. You can now query tables using LINQ against the silverlightDS objects.
An example of a LINQ Query is: var o = from DataRow in r where ((BaseRow )DataRow ).RowValues["Review_ID"] == "68" select DataRow ;

Lookup Relationships!

One of the most powerful aspects of the SilverlightDS is the ability to establish relationships between the data results from the web services. Let us say for example we have a table with sales numbers in it and the postal code of where the sale occurred. In another table we have the location of where that postal code is. By establishing relationships between the two DataTables, we are able to simplify binding of lists, sub-grids as well as enforcing business level foreign keys.

Initialization, Fetching and Committing

A great deal of effort has been put into making sure that what you have to do is minimal.

To best explain how simple setting up the SilverlightDS is, let’s do a quick review of the steps.

For a more detailed explanation please download the SDS Guide



Step 1: setup a DAL (web service, WCF, etc..).

Your DAL needs to return a Dataset Object and take in a diffgram. So, you will need to write two Web Methods, one to do the initial load and one to handle the DiffGram that SilverlightDS will return with the changes to the data.


Step 2: Create a new Silverlight App


Step 3: Add a reference to the SilverlightDS Dll file.


Step 4: Add a web reference pointing to your web service.