Unity 2.1 for Silverlight – May 2011, Aug 2012

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

August 2011


Unity is a lightweight, extensible dependency injection container.


Unity 2.1 for Silverlight

Release Notes

Release Notes (May 2011), Release Notes (Aug 2012 update)


Unity features and futures




Microsoft Public License (Ms-PL)

On This Page

Getting Started
Feedback and Support
Related Titles


Unity is a lightweight, extensible dependency injection container. This release is a port of Unity 2.1 to Microsoft Silverlight 3.0 and 4.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.

In Unity 2.1 for Silverlight some capabilities and packaging of the Unity container have been adjusted in order to accommodate the differences between Silverlight and the desktop common language runtime (CLR), so. The following are the major differences:

  • XML configuration is not supported.
  • 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.
  • The Unity interception mechanism is not supported.

For the full list of changes, please refer to the Release Notes.

Audience Requirements

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

System Requirements

The following are the system requirements for using Unity:

  • Operating system: Microsoft Windows® 7 Professional, Enterprise or Ultimate; Windows Server 2003 R2; Windows Server 2008 with Service Pack 2; Windows Server 2008 R2; Windows Vista with Service Pack 2, or Windows XP with Service Pack 3.
  • Microsoft® Silverlight™ 3 or Microsoft Silverlight 4.

For a rich development environment, the following are recommended:

  • Microsoft Visual Studio® 2008 Development System with Service Pack 1 (any edition) or Microsoft Visual Studio 2010 Development System (any edition).
  • Microsoft Silverlight3 Tools for Visual Studio 2008 SP1 or Visual Studio 2010, or Microsoft Silverlight 4 Tools for Visual Studio 2010

To run the unit tests, the following are also required:

  • Microsoft Visual Studio 2008 Professional, Visual Studio 2008 Team Edition, Visual Studio 2010 Premium, Visual Studio 2010 Professional, or Visual Studio 2010 Ultimate edition.
  • Moq v3.1 assemblies.

If these dependencies are not met, you may not be able to use certain features of Unity.

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 Unity, see What is Unity topic and the StopLight QuickStart packaged with the release.


Unity, 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 to share 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 Unity 2.1 for Silverlight, 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. Unity for Silverlight 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 by Microsoft support staff as user-written.

Related Titles

patterns & practices Developer Center