Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

Unity Application Block 1.2 for Silverlight - December 2008

Retired Content

This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This page may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

The latest Unity Application Block information can be found at the Unity Application Block site.

patterns & practices Developer Center

patterns & practices Developer Center

December 2008


The Unity Application Block (Unity) is a lightweight, extensible dependency injection container.


Unity Application Block 1.2 for Silverlight - December 2008

Unity Application Block 1.2 Documentation for Visual Studio 2008

Unity Application Block 1.2 Documentation for Visual Studio 2005




End User Licensing Agreement (EULA)


Getting Started
Feedback and Support
Authors and Contributors
Related Titles


This release of Unity is a port of Unity Application Block 1.2 to Microsoft Silverlight 2.0.

Microsoft Silverlight is a cross-browser, cross-platform implementation of the Microsoft .NET Framework for building and delivering the next generation of media experiences and rich interactive application for the Web.

Silverlight has some differences from the desktop common language runtime (CLR), so some capabilities and packaging of the Unity container have been adjusted in this release. The following are the major differences:

  • The single Microsoft.Practices.Unity.dll file in the Silverlight version contains all the classes from the three separate desktop DLLs: Microsoft.Practices.Unity.dll, Microsoft.Practices.ObjectBuilder2.dll, and Microsoft.Practices.Unity.StaticFactoryExtension.dll. You only need to reference and deploy the one assembly in your Silverlight projects.
  • Because of differences in the Silverlight security model, only public types can be created and injected by the container. The desktop version allows you to also inject internal types.
  • XML configuration is not supported.
  • The Unity interception mechanism is not supported.

Audience Requirements

A working knowledge of the .NET Framework programming and Silverlight is required.

System Requirements

The following are the minimum system requirements to develop applications using Unity for Silverlight:

  • Windows Server 2008, Windows Vista, or Windows XP operating system
  • Microsoft Visual Studio 2008 SP1 with the Visual Web Developer feature or Microsoft Visual Web Developer 2008 Express with SP1
  • Microsoft Silverlight 2.0 SDK. This is included with Silverlight Tools for Visual Studio 2008 SP1.

The following are the minimum system requirements to run applications using Unity for Silverlight:

Getting Started

For an introduction to dependency injection, see the article, Inversion of Control Containers and the Dependency Injection pattern, by Martin Fowler.

For information about the key features of the Unity Application Block, see Introduction to Unity and the StopLight QuickStart packaged with the release.


The Unity Application Block, like many patterns & practices deliverables, is associated with a community site. On this community site, you can post questions, provide feedback, or connect with other users for sharing ideas. Community members can also help Microsoft plan and test future releases of Unity, and download additional content such as extensions and training material.

Feedback and Support

Questions? Comments? Suggestions? To provide feedback about the Unity Application Block, or to get help with any problems, visit the Unity Community site. The message board on the community site is the preferred feedback and support channel because it allows you to share your ideas, questions, and solutions with the entire community. The Unity Application Block is a guidance offering, designed to be reused, customized, and extended. Code-based guidance is shipped "as is" and without warranties. Customers can obtain support through Microsoft Premier Support Services for a fee, but the code is considered user-written by Microsoft support staff.

Authors and Contributors

The Unity Application Block was produced by the following individuals:

  • Product/Program Management: Grigori Melnik (Microsoft Corporation)
  • Architecture/Development: Chris Tavares (Microsoft Corporation) and Fernando Simonazzi (Clarius Consulting)
  • Testing: Vijaya Janakiraman (Solutions IQ), and Carlos Farre (Microsoft Corporation)
  • Documentation: Dennis DeWitt (Linda Werner & Associates Inc) and Alex Homer (Microsoft Corporation)
  • Editing and release: Nelly Delgado and RoAnn Corbisier (Microsoft Corporation), Tina Burden McGrayne (TinaTech, Inc.), and Richard Burte (ChannelCatalyst.com, Inc.)

Many thanks to the following people who previewed Unity for Silverlight and provided meaningful feedback:

  • Bob Brumfield and Erwin van der Valk (Microsoft Corporation), Michael Sync (independent consultant)

Related Titles

patterns & practices Developer Center

© 2015 Microsoft