rookie question - Prism vs Enterprise Library

Topics: Prism v4 - WPF 4
Dec 8, 2010 at 8:32 PM

I apologize in advanced for the rookie question.


I want to write a desktop application from the ground up.  I know that I want feautures of the Enterprise Library.  I also want to write the code for WPF.  I dont want to dirty/confused my development machine with multiple libraries, if they are not going to be used.

Should I install Enterprise Library, Prism, or both?

For example, I know that I want Unity, but its already included with Prism.  So, I am not sure if installing the Prism libraries will give me everything that I need (Prism + Unity + Ent Lib).

Last but not least, I read about a product called The Box, that had everything needed to develop (sample project + documentation).  Could someone tell me where I can download that?

Thanks in advance!




Dec 8, 2010 at 9:11 PM

Let me clarify a few things as I try to answer your questions:

Unity is a dependency injection container.  It is available by itself and included in a number of other patterns & practices guidance projects.

Prism is guidance for building rich, well-written, modular and composable apps in WPF or Silverlight.  The guidance includes written documentation in the form of a guide/ebook, a library of code that may help others use the ideas taught in the guide in their own implementations, and sample code in the form of QuickStarts (showing one concept) and Reference Implementations (bringing together a number of concepts into an app that is based on a real world scenario). The Prism Library of re-usable code makes use of Unity, so it is included in the Prism install. Prism was built so developers can write a little bit of "glue" code and plug in any dependency injection container, so you are not constrained to only using Unity unless you want to.

Enterprise Library is a set of guidance around cross-cutting concerns in application development like data access, logging, etc.  It also uses Unity for dependency injection internally, so Unity is included in the install.

Since EntLib and Prism provide guidance in different areas, I could see a lot of value in installing and using Prism, Enterprise Library, and the docs from Unity.

As far as the "In the Box" training that Karl Shifflett published ( and updated (, it is a walkthrough of part of the guidance included inside of Prism. The currently available "In the Box" focuses on using MVVM and supplements the MVVM topics in the Prism written guide.


Dec 8, 2010 at 9:52 PM

Amazing response, can't thank you enough.  Exactly what I needed to hear.