title: Autofac equivalent of Ninject's WhenInjectedInto()
body: <p>So we're working on converting some projects at work from Ninject to Autofac, and we've stumbled on something really neat within Ninject that we can't figure out how to do in Autofac.  In our application, we have an interface called <code>ISession</code> which is implemented in two different concrete types.  One goes to an Oracle database, and the other goes to an MS-SQL database.</p>
  
  <p>We have controllers in our MVC application that need only one concrete implementation of ISession based on which controller they are being injected into.  For example:</p>
  
  <pre><code>Bind&lt;IFoo&gt;().To&lt;Foo1&gt;();
  Bind&lt;IFoo&gt;().To&lt;Foo2&gt;().WhenInjectedInto&lt;OracleController&gt;();
  </code></pre>
  
  <p>My question is:  how do we achieve the same result in Autofac?  When <code>IFoo</code> is injected into any controller, <code>Foo1</code> should be provided by default, however in one special case, we need <code>Foo2</code> instead.</p>
  
  <p>Thanks for any help in advance!</p>