title: Using Generic Types while binding with Ninject - is it possible?
body: <p>Using Ninject, in my main program I call:</p>
  
  <pre><code>var kernel = new StandardKernel(new MyBindings());
  var stuff = kernel.Get&lt;MediaPresenter&gt;();
  </code></pre>
  
  <p>Unfortunately I get an exception:</p>
  
  <blockquote>
    <p>No matching bindings are available, and the type is not
    self-bindable.</p>
  </blockquote>
  
  <p>I really don't understand what that means. Here is my binding class:</p>
  
  <pre><code>class MyBindings : NinjectModule
  {
      public override void Load()
      {
          Bind&lt;MediaPresenter&gt;().ToSelf();
          Bind(typeof (Dao&lt;Book&gt;)).To(typeof (Dao&lt;Book&gt;));
      }
  }
  </code></pre>
  
  <p>If I remove the line:</p>
  
  <pre><code>Bind(typeof(Dao&lt;Book&gt;)).To(typeof(Dao&lt;Book&gt;));
  </code></pre>
  
  <p>The application runs, but then I get no bindings.</p>
  
  <p>Why does that kind of thing not work and how can I fix it?</p>