This project is read-only.

Requirements

Apr 6, 2009 at 11:02 PM
Does this require Silverlight 3, and if not, how does this compare to the Silverlight 3 Navigation Framework?
Apr 7, 2009 at 1:20 AM
Hi Dewey, this does not require SL3 and the current version avaliable on codeplex is written in SL2. As for how it related to the SL3 navigation framework, let me copy-paste a similar question asked on my blog, it should hopefully answer your Q..

Dany Laporte
Dany Laporte 
on 04-Apr-09 8:02 AM
This is interesting but how does it relate to the already existing NavigationService inside WPF / Silverlight 3?

Dany

Rishi
Rishi
on 04-Apr-09 2:31 PM
@Danny, that is a very good question and it's also one that I looking for answers as well. However, from the little I know about SL3 Navigation Framework, nRoute is a substantially more feature-rich, extensible and comprehensive solution. That's a very broad statement, let me put down pointers from the top of head, but I'll put a more thought-out post later.

- In nRoute Urls are relatively speaking a much higher level of first-class objects, whereas the SL3 Navigation framework fine-tunes itself for a couple of core usage scenarios..
- nRoute is build on the routing engine first introduced in MVC, and it carries the same rich semantics as present in asp.net 3.5sp1/MVC. These are considerably richer than the simpler UriMapper solution in SL3
- Also, in nRoute the routing services are more generic and thus useful for mounting your own Uri based solution atop that - for example, a service bus type solution or you can implement MVC in all its glory..
- I think one of the biggest point of differentiation is the containers in nRoute, in SL3 you are boxed in with two containers who's behaviours are pre-defined though they are somewhat flexible - but in nRoute you can very easily create your own containers. I'll put up a sample that shows how we can save and restore sessions into isolated storage so that user can shut down and come back where he/she left including the complete navigation history. That is a big deal, for new kind of experiences!
- Another critical point in favour of nRoute is it has a very solid support for state management, participation is optional but what it has is simple yet very effective state management options.. I am not aware of SL3 options, but WPF has a opaque system which I don't quite trust..
- If you read my post about abstraction and the one for behaviours, you will know nRoute besides the low-level plumbing does also abstract at a very high level - and dare I say has easier usage semantics than SL3 or WPF.. With over 75 behaviours build-in you get good bang for your bucks - zero in this case Smile
- At heart, nRoute is designed for M-V-VM or similar usage pattern.. on my part I've tried to err on the side flexibility, particularly for use with ViewModels types, as opposed to ease of use - which I think ultimately does reward in richer/complex usage scenarios.. I'm also putting up a post to highlight this separately..
- Related to M-V-VM is my sub-goal of no code-behind, which I think it to a large extends succeeds. Consider the demo app I have no code-behind other than where I needed element-to-element binding (which is now there in SL3) or triggering updates to controls (which is also now configurable in SL3).. so really nRoute helps in keeping afar the code-behind glue and SL3 navigation framework doesn't particularly share this goal I suppose..
- nRoute is Open source v/s a Microsoft fit-and-finish... what can I say!

I think those are some core difference I can think off right now.. I'll just point one thing more, while coding I've tried to carry the spirit of MVC in that almost everything is flexible/extensible and doesn't reel you in.. which does count for something, especially as things change.. As far as WPF is concerned, I particularly don't like what's in the box I think it's too tacky but that's my biased opinion.. Hope this helps..

from http://www.orkpad.com/Blog/post/2009/04/02/Introducing-nRoute-an-application-flow-framework-for-Silverlight-and-WPF.aspx


I hope that helps, and just as a pointer I am putting up a post my blog soon, that kinda shows side-by-side both the SL3 nav framework and nRoute. Have a look soon at http://www.orkpad.com

Cheers,
Rishi

Apr 7, 2009 at 2:29 AM
Yes, that helps a lot.
Apr 7, 2009 at 3:08 AM
I am glad.. have a good one..
Rishi