title: Ways to setup a Ninject singleton
body: <p>I have a class (<code>MyFacade</code>) that I injected parameter(s) with <code>Ninject</code>:</p>
  
  <pre><code>class MyFacade
  {
      IDemoInterface demo;
  
      public MyFacade(IDemoInterface demo)
      {
          this.demo = demo;
      }
  
      public void MyMethod()
      {
          Console.WriteLine(demo.GetInfo());
      }
  } 
  </code></pre>
  
  <p>Of course, I have to setup the <code>Ninject</code> to inject the appropiate implementation of my parameter (<code>IDemoInterface</code>)</p>
  
  <p>I know, I can instantiate <code>MyFacade</code> object by doing <code>kernel.Get&lt;MyFacade&gt;();</code> without setting anything else. Currently my facade doesn't have an interface (because it is my only implementation, maybe I will add its interface for standard proposes)</p>
  
  <p>if I want to make this facade singlenton, I know two ways: create a empty constructor and pass a parameter by doing this <code>kernel.Get&lt;IDemoInterface&gt;();</code> or by setup Ninject like: <code>kernel.Bind&lt;MyFacade&gt;().To&lt;MyFacade&gt;().InSingletonScope();</code></p>
  
  <p>The second one look a better approach, but do you know any other way to setup it in a singleton way?</p>