<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>Unity Community Contributions</title><link>http://unitycontributions.codeplex.com/project/feeds/rss</link><description>A project dedicated to the community contributions for Unity, the Microsoft Patterns and Practices dependency injection framework.            </description><item><title>Source code checked in, #80132</title><link>http://unitycontributions.codeplex.com/SourceControl/changeset/changes/80132</link><description>Upgrade&amp;#58; New Version of LabDefaultTemplate.xaml. To upgrade your build definitions, please visit the following link&amp;#58; http&amp;#58;&amp;#47;&amp;#47;go.microsoft.com&amp;#47;fwlink&amp;#47;&amp;#63;LinkId&amp;#61;254563</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:49:39 GMT</pubDate><guid isPermaLink="false">Source code checked in, #80132 20121001094939P</guid></item><item><title>Source code checked in, #80131</title><link>http://unitycontributions.codeplex.com/SourceControl/changeset/changes/80131</link><description>Checked in by server upgrade</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:43:10 GMT</pubDate><guid isPermaLink="false">Source code checked in, #80131 20121001094310P</guid></item><item><title>New Post: Unity 2.0 and Visual Studio 2010</title><link>http://unitycontributions.codeplex.com/Thread/View.aspx?ThreadId=222862</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;If no one objects I would like to update&amp;nbsp;solution to the&amp;nbsp;latest tools and libraries.&lt;/p&gt;&lt;/div&gt;</description><author>ENikS</author><pubDate>Mon, 09 Aug 2010 00:03:26 GMT</pubDate><guid isPermaLink="false">New Post: Unity 2.0 and Visual Studio 2010 20100809120326A</guid></item><item><title>Source code checked in, #55373</title><link>http://unitycontributions.codeplex.com/SourceControl/changeset/changes/55373</link><description>Checked in by server upgrade</description><author>_TFSSERVICE</author><pubDate>Mon, 02 Aug 2010 22:49:34 GMT</pubDate><guid isPermaLink="false">Source code checked in, #55373 20100802104934P</guid></item><item><title>New Post: Unity 2.0 and DynamicMethodBuildPlanCreatorPolicy</title><link>http://unitycontributions.codeplex.com/Thread/View.aspx?ThreadId=81468</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;is there any extension planned to provide more flexible build plans than created with &lt;span&gt;DynamicMethodBuildPlanCreatorPolic? For instance, build plans which take into consideration whether there build process is a specific scope of a disposable resource?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;&lt;/div&gt;</description><author>scooletz</author><pubDate>Wed, 20 Jan 2010 18:51:53 GMT</pubDate><guid isPermaLink="false">New Post: Unity 2.0 and DynamicMethodBuildPlanCreatorPolicy 20100120065153P</guid></item><item><title>New Post: Remove unneeded Usings, and link to Lib folder</title><link>http://unitycontributions.codeplex.com/Thread/View.aspx?ThreadId=75991</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hey team - can you remove the unnecessary using clauses before checkin?&amp;nbsp; There are two Usings that I had to remove before the solution would build.&amp;nbsp; Just commenting out the Using was enough, so they were unnecessary.&amp;nbsp;&amp;nbsp; They were both for&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Microsoft.Practices.EnterpriseLibrary.Common.Configuration.&lt;/p&gt;
&lt;p&gt;One in ConfigurationExtension.cs and the other in&amp;nbsp;&lt;span style="color:#2b91af;font-size:x-small"&gt;&lt;span style="color:#2b91af;font-size:x-small"&gt;ConfigurationExtensionConfigurator&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#2b91af;font-size:x-small"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#2b91af;font-size:x-small"&gt;&lt;span style="color:#2b91af;font-size:x-small"&gt;also, can you put the 4 Unity DLL's into a Lib folder and link to them there?&amp;nbsp; The solution&amp;nbsp;currently refers to the GAC.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#2b91af;font-size:x-small"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><author>bradirby</author><pubDate>Mon, 23 Nov 2009 19:42:30 GMT</pubDate><guid isPermaLink="false">New Post: Remove unneeded Usings, and link to Lib folder 20091123074230P</guid></item><item><title>New Post: Unity and ASP.Net MVC</title><link>http://unitycontributions.codeplex.com/Thread/View.aspx?ThreadId=64848</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi rroman81,&lt;/p&gt;
&lt;p&gt;My UnityContribution (EventAggregator)&amp;nbsp;got stomped on back on changeset 18055 without any warning so I since been lone-wolfing it.&amp;nbsp; I prefer the EventAggregator (pulled from the CompositeWPF) because I use PRISM and Unity quite heavily - code is consistent.&amp;nbsp;&amp;nbsp;&amp;nbsp; I took a different approach to injecting MVC2 with Unity; I use interface interception - if you have time for code-review I would be interested in your feedback.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You'll find in the source that I have an MVCContrib&amp;nbsp;&amp;nbsp;which utilizes UnityContrib (EventAggregator and Logging).&amp;nbsp;&amp;nbsp; The wire-up magic is done in the MVCContrib.Base.&lt;strong&gt;GlobalBase.cs&lt;/strong&gt; file.&amp;nbsp;&amp;nbsp; You'll find that minimal code changes are required to implement MVCContrib - Global.asax.cs has minor changes and controllers need only derive from MVCControllerBase.&lt;/p&gt;
&lt;p&gt;I use Interface Interception - the code that handles IControllerFactory interception follows&amp;nbsp; (source code available &lt;a href="http://www.global-webnet.net/MVCContrib.zip"&gt;HERE&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ControllerCallHandler.cs&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:Black;background-color:White"&gt;
&lt;pre&gt;&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; Implement this method to execute your handler processing.&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;param name=&amp;quot;input&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:Green"&gt;Inputs to the current call to the target.&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;param name=&amp;quot;getNext&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:Green"&gt;Delegate to execute to get the next delegate in the handler&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; chain.&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;returns&amp;gt;&lt;/span&gt;&lt;span style="color:Green"&gt;Return value from the target.&amp;lt;/returns&amp;gt;&lt;/span&gt;
&lt;span style="color:Blue"&gt;public&lt;/span&gt; IMethodReturn Invoke(IMethodInvocation input, GetNextHandlerDelegate getNext)
{
    IMethodReturn msg;
    &lt;span style="color:Blue"&gt;try&lt;/span&gt;
    {
        Logger.Log(&lt;span style="color:Blue"&gt;string&lt;/span&gt;.Format(&lt;span style="color:#A31515"&gt;&amp;quot;BEFORE::ControllerCallHandler.Invoke for {0}&amp;quot;&lt;/span&gt;,
            input.Target.GetType().Name), 
            Category.Debug, Priority.None);

        msg = getNext()(input, getNext);

        &lt;span style="color:Green"&gt;// Create child container for each&lt;/span&gt;
        IUnityContainer childContainer = Container.CreateChildContainer();

        &lt;span style="color:Green"&gt;// If the controller is being handled by MVCContrib - implements IControllerBase&lt;/span&gt;
        &lt;span style="color:Green"&gt;// then we'll set the Container.  Attempts to do a BuildUp here do not work as&lt;/span&gt;
        &lt;span style="color:Green"&gt;// expected so the Container Setter is expected to perform a Container.Buildup(this)&lt;/span&gt;
        &lt;span style="color:Green"&gt;// See Base\ControllerBase Container setter for details&lt;/span&gt;
        &lt;span style="color:Blue"&gt;if&lt;/span&gt; (msg.ReturnValue &lt;span style="color:Blue"&gt;is&lt;/span&gt; IControllerBase)
            ((IControllerBase)msg.ReturnValue).Container = childContainer;

        Logger.Log(&lt;span style="color:Blue"&gt;string&lt;/span&gt;.Format(&lt;span style="color:#A31515"&gt;&amp;quot;AFTER::ControllerCallHandler.Invoke for {0}&amp;quot;&lt;/span&gt;,
            input.Target.GetType().Name),
            Category.Debug, Priority.None);
    
    }
    &lt;span style="color:Blue"&gt;catch&lt;/span&gt; (Exception ex)
    {
        msg = input.CreateExceptionMethodReturn(ex);
    }

    &lt;span style="color:Blue"&gt;return&lt;/span&gt; msg;
}

&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;I've found that Unity's Buildup has issue with dynamically generated instances so my ControllerBase.cs (implementing IControllerBase) contains the following:&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:Black;background-color:White"&gt;
&lt;pre&gt;&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; Gets or sets the container.  Set by the CustomControllerFactory&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;value&amp;gt;&lt;/span&gt;&lt;span style="color:Green"&gt;The container.&amp;lt;/value&amp;gt;&lt;/span&gt;
&lt;span style="color:Blue"&gt;public&lt;/span&gt; IUnityContainer Container
{
    &lt;span style="color:Blue"&gt;get&lt;/span&gt; { &lt;span style="color:Blue"&gt;return&lt;/span&gt; _container; }
    &lt;span style="color:Blue"&gt;set&lt;/span&gt;
    {
        &lt;span style="color:Green"&gt;// Don't set if already set&lt;/span&gt;
        &lt;span style="color:Blue"&gt;if&lt;/span&gt; (_container != &lt;span style="color:Blue"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; _container.GetType().ToString() == value.GetType().ToString())
            &lt;span style="color:Blue"&gt;return&lt;/span&gt;;

        _container = value;

        &lt;span style="color:Green"&gt;// Buildup of MVCControllerBase so that we can&lt;/span&gt;
        &lt;span style="color:Green"&gt;// have logger and future types&lt;/span&gt;
        value.BuildUp(&lt;span style="color:Blue"&gt;this&lt;/span&gt;);

        &lt;span style="color:Green"&gt;// We'll have a Logger now that this is built up.&lt;/span&gt;
        Logger.Log(&lt;span style="color:#A31515"&gt;&amp;quot;ControllerBase::Container (setter) -- Performing Buildup of &amp;quot;&lt;/span&gt; + GetType().Name,
            Category.Debug, Priority.None);

        &lt;span style="color:Green"&gt;// The type will be that of the derived class.&lt;/span&gt;
        &lt;span style="color:Green"&gt;// BuildUp of the parent controller&lt;/span&gt;
        value.BuildUp(GetType(), &lt;span style="color:Blue"&gt;this&lt;/span&gt;);

        &lt;span style="color:Green"&gt;// Notify controller&lt;/span&gt;
        OnContainerSet();
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;My HomeController looks as follows:&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:Black;background-color:White"&gt;
&lt;pre&gt;&lt;span style="color:Blue"&gt;namespace&lt;/span&gt; MvcApplication2.Controllers
{
[HandleError]
&lt;span style="color:Blue"&gt;public&lt;/span&gt; &lt;span style="color:Blue"&gt;class&lt;/span&gt;&lt;span style="color:MediumTurquoise"&gt; HomeController : MVCControllerBase
&lt;/span&gt;{
    &lt;span style="color:Blue"&gt;public&lt;/span&gt; HomeController()
    {
        Debug.WriteLine(&lt;span style="color:#A31515"&gt;&amp;quot;HomeController:CTOR&amp;quot;&lt;/span&gt;, &lt;span style="color:#A31515"&gt;&amp;quot;DEBUG&amp;quot;&lt;/span&gt;);
    }

    [Dependency]
    &lt;span style="color:Blue"&gt;public&lt;/span&gt; IDataService service { &lt;span style="color:Blue"&gt;get&lt;/span&gt;; &lt;span style="color:Blue"&gt;set&lt;/span&gt;; }

    [Dependency]
    &lt;span style="color:Blue"&gt;public&lt;/span&gt; IPresentationModel model { &lt;span style="color:Blue"&gt;get&lt;/span&gt;; &lt;span style="color:Blue"&gt;set&lt;/span&gt;; }

    [Dependency]
    &lt;span style="color:Blue"&gt;public&lt;/span&gt; IEventAggregator Aggregator { &lt;span style="color:Blue"&gt;get&lt;/span&gt;; &lt;span style="color:Blue"&gt;set&lt;/span&gt;; }

    [Dependency]
    &lt;span style="color:Blue"&gt;public&lt;/span&gt; IAggregatorEventTokens Tokens { &lt;span style="color:Blue"&gt;get&lt;/span&gt;; &lt;span style="color:Blue"&gt;set&lt;/span&gt;; }

    &lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
    &lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; We don't have constructor injection since we're using CustomControllerFactory&lt;/span&gt;
    &lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; so we'll rely on notification when the container is set.  This will be processed&lt;/span&gt;
    &lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; everytime a page is hit and our EventAggregator is a singleton so we'll have to&lt;/span&gt;
    &lt;span style="color:Gray"&gt;///&lt;/span&gt;&lt;span style="color:Green"&gt; ensure we only subscribe one time.&lt;/span&gt;
    &lt;span style="color:Gray"&gt;///&lt;/span&gt; &lt;span style="color:Gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
    &lt;span style="color:Blue"&gt;protected&lt;/span&gt; &lt;span style="color:Blue"&gt;override&lt;/span&gt; &lt;span style="color:Blue"&gt;void&lt;/span&gt; OnContainerSet()
    {
        
        Logger.Log(&lt;span style="color:#A31515"&gt;&amp;quot;HomeController::OnContainerSet()&amp;quot;&lt;/span&gt;, Category.Debug, Priority.None);

        &lt;span style="color:Green"&gt;// GetTokens will only return null if key is not already set&lt;/span&gt;
        &lt;span style="color:Blue"&gt;if&lt;/span&gt; (Tokens.GetToken(GetType().FullName) == &lt;span style="color:Blue"&gt;null&lt;/span&gt;)
        {
            Logger.Log(&lt;span style="color:#A31515"&gt;&amp;quot;HomeController::Subscribed to DataServiceEvent -- EVENT HANDLER&amp;quot;&lt;/span&gt;,
                Category.Debug, Priority.None);

            &lt;span style="color:Green"&gt;// Subscribe to the DataServiceEvent&lt;/span&gt;
            SubscriptionToken token = Aggregator.GetEvent&amp;lt;DataServiceEvent&amp;gt;()
                .Subscribe(DataServiceHandler, ThreadOption.PublisherThread, &lt;span style="color:Blue"&gt;true&lt;/span&gt;);

            &lt;span style="color:Green"&gt;// Set the token so we don't subscribe more than once&lt;/span&gt;
            Tokens.SetToken(GetType().FullName, token);
        }
    }

    &lt;span style="color:Blue"&gt;public&lt;/span&gt; &lt;span style="color:Blue"&gt;void&lt;/span&gt; DataServiceHandler(DataServiceEventArgs e)
    {
        Logger.Log(&lt;span style="color:Blue"&gt;string&lt;/span&gt;.Format(
            &lt;span style="color:#A31515"&gt;&amp;quot;HomeController.DataServiceHandler STATUS = [{0}]&amp;quot;&lt;/span&gt;, e.Status), 
            Category.Debug, Priority.None);
    }

    &lt;span style="color:Blue"&gt;public&lt;/span&gt; ActionResult Index()
    {
        ViewData[&lt;span style="color:#A31515"&gt;&amp;quot;Message&amp;quot;&lt;/span&gt;] = &lt;span style="color:#A31515"&gt;&amp;quot;Welcome to ASP.NET MVC!&amp;quot;&lt;/span&gt;;
        Logger.Log(&lt;span style="color:#A31515"&gt;&amp;quot;CONTROLLER:HomeController  -- Index() &amp;quot;&lt;/span&gt;, 
            Category.Debug, Priority.High);

        &lt;span style="color:Green"&gt;// Call the data service to get client list&lt;/span&gt;
        model.Clients = service.GetClients();
        &lt;span style="color:Blue"&gt;return&lt;/span&gt; View();
    }

    &lt;span style="color:Blue"&gt;public&lt;/span&gt; ActionResult About()
    {
        Logger.Log(&lt;span style="color:#A31515"&gt;&amp;quot;CONTROLLER:HomeController  -- About()&amp;quot;&lt;/span&gt;, 
            Category.Debug, Priority.High);

        ViewData[&lt;span style="color:#A31515"&gt;&amp;quot;ModelClients&amp;quot;&lt;/span&gt;] = &lt;span style="color:Blue"&gt;string&lt;/span&gt;.Format(&lt;span style="color:#A31515"&gt;&amp;quot;There are {0} clients loaded!&amp;quot;&lt;/span&gt;, 
            model.Clients.Count);
        &lt;span style="color:Blue"&gt;return&lt;/span&gt; View();
    }
}

&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;With the logging generating the following output on &amp;quot;Home&amp;quot; click:&lt;/p&gt;
&lt;div style="color:Black;background-color:White"&gt;
&lt;pre&gt;Debug(None): BEFORE CREATE:: CustomControllerFactory.CreateController()
Debug(None): ControllerMatchingRule.Matches(member=[System.Web.Mvc.IControllerFactory])
Debug(None): ControllerMatchingRule.Matches(member=[System.Web.Mvc.IControllerFactory])
Debug(None): BEFORE::ControllerCallHandler.Invoke &lt;span style="color:Blue"&gt;for&lt;/span&gt; Wrapped_IControllerFactory_18300eb12f6c4846875ab28ce152b54f
DEBUG: HomeController:CTOR
Debug(None): ControllerBase::Container (setter) -- Performing Buildup of HomeController
Debug(None): HomeController::OnContainerSet()
Debug(None): AFTER::ControllerCallHandler.Invoke &lt;span style="color:Blue"&gt;for&lt;/span&gt; Wrapped_IControllerFactory_18300eb12f6c4846875ab28ce152b54f
Debug(None): AFTER CREATE:: CustomControllerFactory.CreateController() CREATED [HomeController]
Debug(High): CONTROLLER:HomeController  -- Index() 
Debug(None): HomeController.DataServiceHandler STATUS = [3 Records sent]
Debug(None): PresentationModel.Clients updated with 3 records
Debug(None): ControllerMatchingRule.Matches(member=[System.Web.Mvc.IControllerFactory])
Debug(None): ControllerMatchingRule.Matches(member=[System.Web.Mvc.IControllerFactory])
Debug(None): BEFORE::ControllerCallHandler.Invoke &lt;span style="color:Blue"&gt;for&lt;/span&gt; Wrapped_IControllerFactory_18300eb12f6c4846875ab28ce152b54f
Debug(None): AFTER::ControllerCallHandler.Invoke &lt;span style="color:Blue"&gt;for&lt;/span&gt; Wrapped_IControllerFactory_18300eb12f6c4846875ab28ce152b54f
Debug(None): CustomControllerFactory.ReleaseController() RELEASED [HomeController]&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;</description><author>Billkrat</author><pubDate>Sat, 08 Aug 2009 15:36:13 GMT</pubDate><guid isPermaLink="false">New Post: Unity and ASP.Net MVC 20090808033613P</guid></item><item><title>New Post: Unity and ASP.Net MVC</title><link>http://unitycontributions.codeplex.com/Thread/View.aspx?ThreadId=64848</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I'd like to nail down how to wire up Unity container to ASP.Net Mvc.&amp;nbsp; Now I do not need ServiceLocator because keep-it-simple principle applies in most web apps.&amp;nbsp; However, it's not super trivial on how to Integrate.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The issue that i have is that i am not quiet sure how to register with Unity all available controllerTypes to be Per Web Request life cycle.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thoughts: If two outstanding requests are done for the same controller, i want to ensure that each uses their own instance.&amp;nbsp; In high level terms, do I need to iterate over all IController implementing types in the current assembly and then register it with the container with LifeTimeManager that saves resolved/instantiated objects in the HttpContext.Current?&lt;/p&gt;
&lt;p&gt;This is what i have so far:&lt;/p&gt;
&lt;p&gt;public interface IContainerAccessor&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; Unity container. &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IUnityContainer Container { get; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;public class UnityControllerFactory : DefaultControllerFactory&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private IUnityContainer _container;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; Contructor that instantiates the container, taking configuration from web.config &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public UnityControllerFactory(IUnityContainer container)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this._container = container;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name=&amp;quot;controllerType&amp;quot;&amp;gt; The type of controller to instantiate. &amp;lt;/param&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;An instance of the Controller &amp;lt;/returns&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;exception cref=&amp;quot;ArgumentNullException&amp;quot;&amp;gt;This exception is thrown when controllerType is null.&amp;lt;/exception&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;exception cref=&amp;quot;ArgumentException&amp;quot;&amp;gt;This exception is thrown when controllerType type does not implement IController.&amp;lt;/exception&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected override IController GetControllerInstance(Type controllerType)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (controllerType == null)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new ArgumentNullException(&amp;quot;controllerType&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!typeof(IController).IsAssignableFrom(controllerType))&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new ArgumentException(&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string.Format(&amp;quot;Type requested is not a controller: {0}&amp;quot;, controllerType.Name), &amp;quot;controllerType&amp;quot;);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return this._container.Resolve(controllerType) as IController;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;In Global.asax.cs&lt;/p&gt;
&lt;p&gt;/// &amp;lt;summary&amp;gt; Unity container property. &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static IUnityContainer Container&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; get &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return _container;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; read-only Container property&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IUnityContainer IContainerAccessor.Container&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; get&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Container;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;protected void Application_Start()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ContainerInit();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegisterRoutes(RouteTable.Routes);&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControllerBuilder.Current.SetControllerFactory(new UnityControllerFactory(Container));&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected void Application_End(object sender, EventArgs e)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ContainerCleanup();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; Clean &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void ContainerInit()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (_container == null)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _container = new UnityContainer();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void ContainerCleanup()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Container != null)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Container.Dispose();&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/div&gt;</description><author>rroman81</author><pubDate>Fri, 07 Aug 2009 16:49:42 GMT</pubDate><guid isPermaLink="false">New Post: Unity and ASP.Net MVC 20090807044942P</guid></item><item><title>Created Issue: Unity Schema</title><link>http://unitycontributions.codeplex.com/WorkItem/View.aspx?WorkItemId=3756</link><description>A configSource attribute of the Unity element should be added to the schema for instances where the configuration is externalized from app.config or web.config.  Currently the configSource attribute on the unity element indicates it is not recognized although it works just fine.&lt;br /&gt;&lt;br /&gt;Add elements are optional within extensions, instances, etc.   Currently xsd is indicating that these elements are missing.&lt;br /&gt;</description><author>rcollette</author><pubDate>Thu, 18 Jun 2009 15:59:54 GMT</pubDate><guid isPermaLink="false">Created Issue: Unity Schema 20090618035954P</guid></item><item><title>Commented Task: Provide explanatory notes of using Unity Containers in web application and possible pitfalls.</title><link>http://unitycontributions.codeplex.com/WorkItem/View.aspx?WorkItemId=900</link><description>As per user suggestion&amp;#58;  See discussion thread for further info,ThreadId 27803  &lt;br /&gt;&lt;br /&gt;1. lifetime managers -- in a web application you would probably prefer your instances are created on a per request &amp;#40;or per web request&amp;#41; basis, however there are times when a singleton would fit.   When is the right time to use the singleton vs the per request.  Would putting together a per web request &amp;#40;like Windsor&amp;#41; lifetime manager be out of scope&amp;#63;&lt;br /&gt;&lt;br /&gt;4. where to use the container -- my understanding is that in a perfect world IoC.Resolve&amp;#60;T&amp;#62; would be called once and only once per application.  However, its not a perfect world, so when should we be using the container to resolve dependencies&amp;#63;  When is a good time for anything other than your &amp;#34;starting point&amp;#34; to be aware that IoC is even available.&lt;br /&gt;&lt;br /&gt;Probably what I have suggested may be more along the lines of best practices and &amp;#34;why&amp;#34; as opposed to a quick start, but I for one would be very thankful for a quick start that answered these questions as opposed to yet another &amp;#34;heres a three page, two component basic blog&amp;#34; example.&lt;br /&gt;Comments: ** Comment from web user: rcollette ** &lt;p&gt;I agree with item 1.  A &amp;#34;Request&amp;#34; or &amp;#34;RequestResponse&amp;#34; lifetime would be useful.&lt;br /&gt;&lt;/p&gt;</description><author>rcollette</author><pubDate>Thu, 18 Jun 2009 15:57:26 GMT</pubDate><guid isPermaLink="false">Commented Task: Provide explanatory notes of using Unity Containers in web application and possible pitfalls. 20090618035726P</guid></item><item><title>Patch Uploaded: #2967</title><link>http://unitycontributions.codeplex.com/SourceControl/PatchList.aspx</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/sivanarayanan'&gt;sivanarayanan&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;The patch did not have any support &amp;#39;array&amp;#39; element. I have added that. Also I have done some more normalization and extracted common element types out. I have retained context sensitive help while doing so. I have tested it with Enterprise Library Hands On Lab for Unity - Lab04 exercise. In that exercise I chose to implement all of the container configuration only using only the app.config without use of any runtime API. &amp;#40;This required using array injection&amp;#41;&lt;/p&gt;</description><author>sivanarayanan</author><pubDate>Fri, 29 May 2009 15:15:20 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #2967 20090529031520P</guid></item><item><title>Commented Issue: Schema for Visual Studio Intellisense</title><link>http://unitycontributions.codeplex.com/WorkItem/View.aspx?WorkItemId=2309</link><description>The latest version of the schema provided in May of this year is missing the targetNamespace element &amp;#91; &amp;#40;targetNamespace&amp;#61;&amp;#34;urn&amp;#58;unity-mapping-1.0&amp;#34;&amp;#41; &amp;#93;.  This means that even though a developer adds the reference to that namespace on the &amp;#60;unity&amp;#62; element within their project&amp;#39;s configuration file, they will not get intellisense working.  I have attached an updated file with this added so that intellisense will work.&lt;br /&gt;Comments: ** Comment from web user: David_Libido ** &lt;p&gt;What do I have to do to get this working&amp;#63; I put this file in C&amp;#58;&amp;#92;Program Files&amp;#92;Microsoft Visual Studio 9.0&amp;#92;Common7&amp;#92;Packages&amp;#92;schemas&amp;#92;xml, but it doesn&amp;#39;t work.&lt;/p&gt;</description><author>David_Libido</author><pubDate>Fri, 17 Apr 2009 12:57:09 GMT</pubDate><guid isPermaLink="false">Commented Issue: Schema for Visual Studio Intellisense 20090417125709P</guid></item><item><title>Source code checked in, #21766</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Mon, 09 Feb 2009 01:25:39 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21766 20090209012539A</guid></item><item><title>Source code checked in, #21764</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Mon, 09 Feb 2009 00:31:40 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21764 20090209123140A</guid></item><item><title>Source code checked in, #21763</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Mon, 09 Feb 2009 00:28:02 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21763 20090209122802A</guid></item><item><title>Source code checked in, #21759</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description>Updated configurations and added propertymapping functionality for resolution of objects.</description><author>MichaelDBang</author><pubDate>Sun, 08 Feb 2009 18:41:52 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21759 20090208064152P</guid></item><item><title>Source code checked in, #21690</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Fri, 06 Feb 2009 02:20:05 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21690 20090206022005A</guid></item><item><title>Source code checked in, #21643</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Tue, 03 Feb 2009 21:58:58 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21643 20090203095858P</guid></item><item><title>Source code checked in, #21641</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Tue, 03 Feb 2009 21:58:37 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21641 20090203095837P</guid></item><item><title>Source code checked in, #21610</title><link>http://www.codeplex.com/unitycontributions/SourceControl/ListDownloadableCommits.aspx</link><description></description><author>MichaelDBang</author><pubDate>Sun, 01 Feb 2009 21:20:32 GMT</pubDate><guid isPermaLink="false">Source code checked in, #21610 20090201092032P</guid></item></channel></rss>