Imagine you have a Silverlight application with functionality that is likely to change over time, but that application depends on some possibly heavyweight libraries that aren’t going to change. Every single change in your code would cause users to download the entire XAP file again, including those heavy libraries that didn’t change. To address this... read more
Resource dictionaries are a nice way to specify styles, data templates, and similar items in WPF/Silverlight applications. In Prism modules, some times one would expect to define resource dictionaries that are specific to a certain module, as this would avoid exposing module specifics to the rest of the application. Yet, this might not be totally... read more
Placing command bindings inside DataTemplates is a common scenario when developing rich client applications in Sliverlight/WPF; for example, when defining the item template in an items control to decide how to show certain data object, it’s likely that you’d want to include a button with a command binding in the template. However, since the DataContext... read more
There have been some discussions (e.g. this one) where people using Prism wonder how to include service references (for example, to WCF services) to Prism applications. It has been shown, for example in this blog post and this other one that this is possible with certain precautions. However, the auto generated proxy classes that are... read more
Hi everybody, Authentication and authorization are topics that are often discussed in the Prism community (for example, this work item or this thread), even though the Prism guidance does not provide support for these scenarios. In this blog post, we will show a possible approach Agustin Adami and I thought to achieve authentication and authorization... read more
When developing applications with Prism, there are certain differences between using Unity and MEF, essentially because MEF provides the possibility of using declarative attributes to export types to the container. So in this post I’ll analyze a curious example of these differences: the MarketModule of the Prism StockTrader Reference Implementation. In the Prism-v2 version of... read more
There’s a behavior in Prism Region Navigation which might cause some confusion for those that aren’t used to it: a navigation request that leads to an error doesn’t throw an exception, but rather the navigation request stops and the exception apparently vanishes. This is because, instead of throwing an exception, the RegionNavigationService exposes a NavigationFailed... read more
As you probably read in this post, we’ve been working on the Prism Training kit this past week. This update took place after the official release of Prism 4.0 and the enthusiasm around it. Now with Damian, Matias, Diego and Ezequiel we’ve released Prism Traning Kit 4.0, with the pre-existing labs updated to Prism 4.0,... read more
On this post I’ll write about an interesting tendency I’ve seen in Microsoft technologies. My impression is that, as technology advances, efforts are put not only in achieving the possibility of great technical prowess but also on simplifying the development of software. A recent example that illustrates this is the release of Visual Studio LightSwitch,... read more
The user interface is an important aspect of software development that in most cases defines the first impression the customer gets of an application. We’ve seen lots of great software with poor, overly-simple interfaces, or on the contrary, sophisticated ones that sacrifice functionality, intuitiveness and/or efficiency. Windows Presentation Foundation (WPF) is Microsoft’s response to the... read more