title: Inject dictionary using dependency injection
body: <p>i created a function(dictionary) for my project:</p>
  
  <pre><code>private static Dictionary&lt;string, Func&lt;IMessageProcessor&gt;&gt; strategyFactories = new Dictionary&lt;string, Func&lt;IMessageProcessor&gt;&gt;()
      {
          { "T.2.12.0", new Func&lt;IMessageProcessor&gt;(() =&gt; new HVPVTParser()) },
          { "T.3.03.0", new Func&lt;IMessageProcessor&gt;(() =&gt; new PVTParser()) },
          { "Unknown", new Func&lt;IMessageProcessor&gt;(() =&gt; new UnknownParser()) }
      };
  </code></pre>
  
  <p>As per requirement, I want to get rid of new operator for classes (HVPVTParser, PVTParser and UnknownParser). Can I improve function through dependency injection? During research, I found an option to inject my dictionary. I am unable to understand word 'inject'. Can anyone provide code sample to achieve my goal or any guidelines to solve a problem.</p>