none
xbap application design patterns RRS feed

  • Question

  • Does anyone know of any decent books or articles that include xbap application patterns? I'm currently looking at developing a SaaS application and don't know whether or not to xbap or Silvelight. I know of the platform differences, but want to see if the xbap architecture lends itself to common patterns. For example, redirection to login, persisting state information, secure page navigation, etc. I know there's various bits on MSDN, but I'm hoping that someone may take the pain away by describing common patterns.

    I just hope this ins't too early to ask.

    Any help much appreciated. 
    Tuesday, January 13, 2009 10:29 PM

Answers

  • -> Does anyone know of any decent books or articles that include xbap application patterns?

    As far as I know, there is none.

    -> I'm currently looking at developing a SaaS application and don't know whether or not to xbap or Silvelight. I know of the platform differences, but want to see if the xbap architecture lends itself to common patterns.

    I think the only difference which makes XBAP different from WPF and Silverlight is its ClickOnce deployment model, XBAP will be treated as online deployed rather than locally deployed, and there is a lot of interesting deployment issues when using XBAP, if you encounter any one of them, you coud post back here for assistance.

    But in order to better understand XBAP, you need to understand its security sandboxing model, and how it impacts the development and feature sets of your application, here is the MSDN article which illustrates the security aspects of XBAP:

    http://msdn.microsoft.com/en-us/library/aa970906.aspx

    And also you need to understand the ClickOnce online deployment model to better understand the deployment limitation of XBAP:

    http://msdn.microsoft.com/en-us/library/aa970060.aspx#deploy_the_app


    In terms of the difference between XBAP and Silverlight, I think one of the biggest differences is that Silverlight is cross platform browser plugin, requires stripped down version of CLR installed at the client side, but XBAP requires a full .NET Framework runtime and library to be installed which could only be possible on windows client. But one thing wich makes XBAP superb is that 3D feature in XBAP is enabled in partial trust. It will takes a long way to implement 3D features in Silverlight though.

    When you are talking about SaaS, you might use WCF to expose servies, one thing which is worth noting is that XBAP only supports BasicHttpBinding, and only supports transport level aka HTTPS security, message security is not enabled under partial trust, which could affect how you configure the bindings and endpoints of your services at the service side.

    -> For example, redirection to login, persisting state information, secure page navigation, etc.
    In terms of redirection to the login, it depends on what type of login strategy you are using, are you using Windows credentials or home made credentials, do you want to incorporate forms authentication into XBAP?

    In terms of persisting state information, it depends on what type of state/data/info you want to persist, if you want to leverage local storage, you'd better use isolated storage as it's enabled under partial trust, if you want to persist data out of box aka using database, you'd better try using ADO.NET Data service which could enable data driven RESTful serive endpoints which your XBAP client could connect to persist data. Or alternatively, you could implement your own data services using WCF at the service side.

    And in terms of secure page navigation, it depends on what you mean by secure navigation, if you are talking about HTTPS, then the answer is yes, it's enabled under XBAP.

    Hope this helps



    Another Paradigm Shift
    http://shevaspace.blogspot.com
    • Marked as answer by Marco Zhou Tuesday, January 20, 2009 11:10 AM
    Friday, January 16, 2009 6:06 AM