title: Issue when trying to map interface to class type in Unity
body: <p><strong>Question Background:</strong></p>
  
  <p>I am simply setting up a Unity container object, registering the types of the selected interface and the class that inherits it, then trying to return the implementation of it.</p>
  
  <p><strong>The code:</strong></p>
  
  <p>Unity:</p>
  
  <pre><code>namespace ABC.Tools.VersionControl
  {
  internal class Unity
  {
      internal static ITfsVcPromotionManager CreateUnityObjects()
      {
          var unityContainer = new UnityContainer();
  
          unityContainer.RegisterType&lt;ITfsVcPromotionManager, TfsVcPromotionManager&gt;();
  
          //****ERROR*****
          return unityContainer.Resolve&lt;ITfsVcPromotionManager&gt;();
      }
    }
  }
  </code></pre>
  
  <p>The interface - ITfsVcPromotionManager:</p>
  
  <pre><code>namespace ABC.Tools.VersionControl.TfsVersionControl
  { 
      interface ITfsVcPromotionManager
      {
          void CheckoutTfsItem(IVersionControlItem tfsItem);
  
          int CheckinTfsItem(IVersionControlItem tfsItem);
      }
  }
  </code></pre>
  
  <p>The class that inherits the above interface - TfsVcPromotionManager</p>
  
  <pre><code>namespace ABC.Tools.VersionControl.TfsVersionControl
  {
  internal class TfsVcPromotionManager:ITfsVcPromotionManager
  {
      private ITfsVcQaCheckoutWorker _checkoutWorker;
  
      private ITfsVcQaCheckinWorker _checkInWorker;
  
      private VersionControlServer _tfsServer;
  
      private TfsVcCheckoutItem _checkoutItem = new TfsVcCheckoutItem();
  
      public TfsVcPromotionManager(/*IVersionControlItem tfsItem*/ ITfsVcQaCheckoutWorker checkOutWorker, ITfsVcQaCheckinWorker checkInWorker, VersionControlServer tfsServer)
      {
          if (checkOutWorker == null || tfsServer == null)
          {
              throw new System.ArgumentException("tfsItem or tfsServer objects cannot be null");
          }
  
          _checkoutWorker = checkOutWorker;
  
          _checkInWorker = checkInWorker;
  
          _tfsServer = tfsServer;
      }
  
      public void CheckoutTfsItem(IVersionControlItem tfsItem)
      {
          if (tfsItem == null)
          {
              throw new System.ArgumentException("TfsItem cannot be null.");
          }
  
          _checkoutWorker.CheckoutTfsQaItem(_tfsServer);
      }
  
      public int CheckinTfsItem(IVersionControlItem tfsItem)
      {
          if (tfsItem == null)
          {
              throw new System.ArgumentException("tfsItem cannot be null.");
          }
  
          return _checkInWorker.CheckinTfsQaItem(tfsItem);
      }
  }
  </code></pre>
  
  <p><strong>The error message:</strong></p>
  
  <p>Result Message: 
  Test method ABCTestProject.TFStests.Check_Interface_CheckOut_Method threw exception: 
  Microsoft.Practices.Unity.ResolutionFailedException: Resolution of the dependency failed, type = "Adp.Tools.VersionControl.TfsVersionControl.ITfsVcPromotionManager", name = "(none)".
  Exception occurred while: while resolving.
  Exception is: InvalidOperationException - The current type, ABC.Tools.VersionControl.ITfsVcQaCheckoutWorker, is an interface and cannot be constructed. Are you missing a type mapping?</p>
  
  <p><strong>Can anyone tell me why this will not map correctly from the interface?</strong></p>