<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>unitycontributions Forum Rss Feed</title><link>http://www.codeplex.com/unitycontributions/Thread/List.aspx</link><description>unitycontributions Forum Rss Description</description><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>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>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;Great! I hope to have my contribution done within the next to weeks; I'll be touching base then if I don't hear anything sooner.
&lt;/div&gt;</description><author>Billkrat</author><pubDate>Mon, 12 Jan 2009 13:59:07 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090112015907P</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;I sent a message so lets see what comes up and how to proceed on this... &lt;br&gt;
&lt;br&gt;
Regards,&lt;br&gt;
Alexander 
&lt;/div&gt;</description><author>alexanderqx</author><pubDate>Mon, 12 Jan 2009 09:10:58 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090112091058A</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;Being I'm the new kid on the block, and you seem to know your way around, could you touch base with folks and get some input on revamping this project?  The project as it stands right now doesn't offer much to the community but we can turn this around pretty quick...  I have my own ideas about how I think the project should evolve but I'd rather leave that to the coordinators (don't want to step on toes).&lt;br&gt;
&lt;br&gt;
Bill
&lt;/div&gt;</description><author>Billkrat</author><pubDate>Sun, 11 Jan 2009 22:41:34 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090111104134P</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;Also i know that Chris from Unity project is using this site as prototype respository so we need to follow up this with him i think... 
&lt;/div&gt;</description><author>alexanderqx</author><pubDate>Sun, 11 Jan 2009 22:24:53 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090111102453P</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;Sure we can do that, we just have to ask from original contributor if they have anything to say for it before we clean them up or what you think? We could create a folder for the ones that do not get compiled anymore and if original contributors dont get involved or reply we move them to this folder...  or should we just move the stuff to one folder that does not get compiled and clean the structure?&lt;br&gt;
&lt;br&gt;
Regards,&lt;br&gt;
Alexander
&lt;/div&gt;</description><author>alexanderqx</author><pubDate>Sun, 11 Jan 2009 22:21:59 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090111102159P</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;Hi Alexander,&lt;br&gt;
&lt;br&gt;
I also am working on a UnityContributions; I'm writing a WCF/Unity behavior - prototype &lt;a href="http://www.global-webnet.net/blogengine/post/2009/01/03/Integrating-IIS-WCF-and-Unity.aspx"&gt;HERE&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
My intentions, in the absence of any nays, was to wipe out the existing Solution which is outdated and has redudant components, i.e., Silverlight, Interceptor.   The main solution is empty and all but one solution actually compiles without error.&lt;br&gt;
&lt;br&gt;
The plan was to emerge with:&lt;br&gt;
my WCF/Unity behavior&lt;br&gt;
Iron9light's Eventbroker&lt;br&gt;
&lt;br&gt;
It looks like You, Iron9light and myself are actively involved in projects - I'd like to see if we could come to consensus on cleaning up the existing project.&lt;br&gt;
&lt;br&gt;
  
&lt;/div&gt;</description><author>Billkrat</author><pubDate>Sun, 11 Jan 2009 22:10:32 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090111101032P</guid></item><item><title>New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=43942</link><description>&lt;div style="line-height: normal;"&gt;&lt;p style="margin:0in 0in 10pt"&gt;&lt;span style="font-family:calibri"&gt;I am in process of porting my previously built Unity extension (Canonical Object from SL2WithPrism) to Unity Community Contributions. Please see the below Quick Intro PDF for this new extension and let me know if you would like to see more info and if you wish to see additional features.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0in 0in 10pt"&gt;&lt;a href="http://xentree.com/SL2WithPrism/UnityContributions_CanonicalObjectExtension_QuickIntro.pdf"&gt;&lt;span style="font-family:calibri"&gt;http://xentree.com/SL2WithPrism/UnityContributions_CanonicalObjectExtension_QuickIntro.pdf&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p style="margin:0in 0in 10pt"&gt;&lt;span style="font-family:calibri"&gt;As part of practicing and some free time now I am in process of porting this part of work to Unity contributions and I should be done in next couple of weeks with extensions on my mind. I will use Common.Unity.Extensions.CanonicalObject namespace and you will find more changesets and ported code in these days in source code tab. &lt;br&gt;
&lt;br&gt;
&lt;/span&gt;&lt;span style="font-family:calibri"&gt;Regards,&lt;br&gt;
Alexander&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>alexanderqx</author><pubDate>Sun, 11 Jan 2009 20:42:48 GMT</pubDate><guid isPermaLink="false">New Post: Porting and making some enchangements to previusly built CanonicalObject Unity Extension 20090111084248P</guid></item><item><title>New Post: Unity and Silverlight</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=33908</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Please refer to this thread http://www.codeplex.com/CompositeWPFContrib/Thread/View.aspx?ThreadId=33819&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Thu, 21 Aug 2008 09:31:08 GMT</pubDate><guid isPermaLink="false">New Post: Unity and Silverlight 20080821093108A</guid></item><item><title>New Post: Unity and Silverlight</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=33908</link><description>&lt;div style="line-height: normal;"&gt;&lt;div id="ctl00_ctl00_Content_TabContentPanel_Content_PostRepeater_ctl02_BodyDiv" class=radEditorContent&gt;
&lt;p&gt;I've got something to work for my situation:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Use a&amp;nbsp;WCF Service to&amp;nbsp;download the configuration for the composite application, i.e. determine what addins are available.&amp;nbsp;The configuration will have the http:// location of the assembly and the name of the class (module) that implememts IModule
    &lt;li&gt;Use a WebClient to download the assembly.
    &lt;li&gt;Use AssemblyPart.Load(e.Result) to load the assembly
    &lt;li&gt;Use Assembly.CreateInstance(...) to create n instance of the class that implements IModule
    &lt;li&gt;Execute Initialise(container) on the addin class
    &lt;li&gt;The addin is then responsible for its own configuration using the client's container (RegionManagerService etc...) &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Having not being party to previous discussions my only concern is I am not using DILight, rather I am using SLUnity should this matter. My reason for using SLUnity is because I need to use property injection rather than constructor injection,&amp;nbsp;that's because the constructor&amp;nbsp;has already been called as part of the CreateInstance.&lt;br&gt;
&lt;br&gt;
Based on this solution I can allow addins to be added to my composite application dynamically&amp;nbsp;and by using the client's container they can subscibe to the pre-registered instances of the client's services.&lt;br&gt;
&lt;br&gt;
This doesn't solve 'how do I configure the container for the client's implementation?' - for that I&amp;nbsp;still think Unity.Configuration would help.&amp;nbsp;&lt;br&gt;
&lt;br&gt;
What do people think? Any comments / concerns,&amp;nbsp;should I be using SLUnity over DILight?&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Thu, 21 Aug 2008 07:27:04 GMT</pubDate><guid isPermaLink="false">New Post: Unity and Silverlight 20080821072704A</guid></item><item><title>New Post: Unity and Silverlight</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=33908</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi,&lt;br&gt;
&lt;br&gt;
Firstly,&amp;nbsp;as a newbie&amp;nbsp;to this forum I would just like to say 'Great Work Everybody' - the discussions and source has really helped me understand the opportunites / drawbacks (special thanks to Michael Sync for his upload of Unity for Silverlight2B2) and secondly I apologise to those who subscribe to the Prism Contrib for WPF forum for raising this discussion twice.&lt;br&gt;
&lt;br&gt;
My question is&amp;nbsp;'I was wondering if anyone out there was considering how Unity.Configuration was going to work with Silverlight?'&lt;br&gt;
&lt;br&gt;
My scenario is I want 3rd parties to be able to inject their own modules at run-time (i.e. I don't want to have to reference them in my project) into regions I have specifically exposed to them - basically I'm allowing 3rd parties to extend my application. &lt;br&gt;
&lt;br&gt;
Originally I had thought of calling a WCF service which 'discovered' the modules on the server using a Configuration File on the server. The service would return a List&amp;lt;IModule&amp;gt; but obviously this would not work because how would the Silverlight Client serialize IModule.&amp;nbsp;&lt;br&gt;
&lt;br&gt;
So I was&amp;nbsp;wondering whether or not the Client's Isolated Storage could be used, put (very) simply it would do the following:&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;The Client's additional&amp;nbsp;configuration&amp;nbsp;(what addons were available) would be obtained using a WCF service, the result being simply a piece of XML&lt;/li&gt;
    &lt;li&gt;'Unity for Silverlight' would be altered to search the application installed assemblies directory first, if not found it would check the client's local isolated storage&lt;/li&gt;
    &lt;li&gt;If not found in either locations it would download the additional assemblies from the server to the client's isolated storage.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Does this sound mad? Has anyone tried this? Does any of it sound unfeasible, i.e. are there any security issues in using the isolated storage?&lt;/p&gt;
&lt;p&gt;Any comments / suggestions would be appreciated&lt;br&gt;
&lt;br&gt;
Thanks&lt;br&gt;
Richie&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>RichieScott</author><pubDate>Wed, 20 Aug 2008 13:58:47 GMT</pubDate><guid isPermaLink="false">New Post: Unity and Silverlight 20080820015847P</guid></item><item><title>New Post: Unity for Silverlight 2 Beta2 is uploaded.</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=31651</link><description>&lt;div style="line-height: normal;"&gt;Hello everybody!! &lt;br&gt;
&lt;br&gt;
I just checked-in the full source code of Unity for Silverlight 2 (beta2) and the QuickStart sample &amp;quot;StopLight&amp;quot;. You can download it from this link http://www.codeplex.com/unitycontributions/SourceControl/DownloadSourceCode.aspx?changeSetId=11969. I still need to port one sample and tests. Please feel free to let me know if you have any question or comment.. &lt;br&gt;
&lt;br&gt;
Regards,&lt;br&gt;
Michael&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>michaelsync</author><pubDate>Wed, 16 Jul 2008 15:54:09 GMT</pubDate><guid isPermaLink="false">New Post: Unity for Silverlight 2 Beta2 is uploaded. 20080716035409P</guid></item><item><title>New Post: What type of Unity 1.0 quick start examples are you looking for?</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=27803</link><description>&lt;div style="line-height: normal;"&gt;We are well aware that the extension documentation is missing. It was a question of waiting another month or more to release with the extension docs or ship now and do the extension docs later.&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>ctavares</author><pubDate>Fri, 20 Jun 2008 22:49:52 GMT</pubDate><guid isPermaLink="false">New Post: What type of Unity 1.0 quick start examples are you looking for? 20080620104952P</guid></item><item><title>NEW POST: Interception</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=29303</link><description>&lt;div style="line-height: normal;"&gt;I tried to use the Interception extensions and found that while they work with Unity 1.0, I get an error trying to Resolve() under Unity 1.1.&lt;br&gt;
&lt;br&gt;
It seems that there were some changes to the Dynamic proxy creation in OB2 (DynamicMethodConstructorStrategy).&lt;br&gt;
&lt;br&gt;
Are there any plans to update this conrtibution to work with Unity 1.1?
&lt;/div&gt;</description><author>RayHenry</author><pubDate>Mon, 09 Jun 2008 13:53:14 GMT</pubDate><guid isPermaLink="false">NEW POST: Interception 20080609015314P</guid></item><item><title>NEW POST: What type of Unity 1.0 quick start examples are you looking for?</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=27803</link><description>&lt;div style="line-height: normal;"&gt;Couple of samples dwelling on container extensions creation would be also nice-to-have. Documentation section says only that developer needs to know OB specifics and that's all. Sounds quite abusing I think.
&lt;/div&gt;</description><author>DenisVuyka</author><pubDate>Wed, 21 May 2008 12:20:24 GMT</pubDate><guid isPermaLink="false">NEW POST: What type of Unity 1.0 quick start examples are you looking for? 20080521122024P</guid></item><item><title>NEW POST: What type of Unity 1.0 quick start examples are you looking for?</title><link>http://www.codeplex.com/unitycontributions/Thread/View.aspx?ThreadId=27803</link><description>&lt;div style="line-height: normal;"&gt;Great, then this topic is resolved by these examples. :-)&lt;br&gt;
&lt;br&gt;
Regards,&lt;br&gt;
Alexander
&lt;/div&gt;</description><author>alexanderQX</author><pubDate>Tue, 20 May 2008 09:43:41 GMT</pubDate><guid isPermaLink="false">NEW POST: What type of Unity 1.0 quick start examples are you looking for? 20080520094341A</guid></item></channel></rss>