Interesting, I keep asking this question a lot and the responses I get are something that un-nerves me. In that, in Silverlight there is a native RSS Reader built in, so the ability to consume an RSS Feed is so easy, it’s almost cheating (Sharepoint readers, pay attention here).
The secret to this can be found in the namespace:
The class in question is the SyndicationFeed.
Code example of how to use this great API, can be found here:
I personally have been using it with Sharepoint, in that I’m no Sharepoint 2007 guru at all, I’ve learnt Sharepoint through just goofing around and playing with it. Given that I’m a total newbie to the product, I decided to build out an intranet with Sharepoint, where I’d use Silverlight as the one-stop client, with it’s own native forms built within and then simply leverage Sharepoint for the hard stuff (business logic, workflow, document collaboration etc).
The way I did this, was I’d use RSS Feeds (that well basically come free on every Custom List etc you spin up inside Sharepoint) that would help me with my data sets, and it would do in a way that was very automatic. In that, the READ part of my RIA solution is child’s play with the above RSS Reader API.
Yet, comes the part on how to Create, Update and Delete. This requires forms right? RSS Reader need not apply here.
As you can hopefully imagine, I’ve got the full power of Sharepoint now at my disposal, and Silverlight has such a passive amount of control over it that again, it’s almost considered cheating. To the end user, visually it just appears 100% Silverlight and at the same time, I can easily use a hybrid approach (point is, AJAX + Silverlight can be a really good bet here).
That’s the reason I think Silverlight is such a powerful runtime that at times we get lost in the whole Flash vs Silverlight battle, and never really sit down and look at what’s in front of us. A great Line of Business RIA solution which can have a passive impact to a solution such as Sharepoint.
Passive being the keyword, in that no need to learn a 3rd party language, keep it .NET, keep it inside Visual Studio, just ship.
You can do this passive approach with any solution as well.
Not convinced? that’s ok, i’ll blog about this in depth shortly but before I do, what’s your thoughts on this approach?