title: 2 dimensional table with indexing by string(object)
body: <p>I've got a problem i need to create 2 dimensional table which will be indexed by string for example:</p>
  
  <pre><code>table["London","Cambridge"] = 120;
  </code></pre>
  
  <p>or jagged:</p>
  
  <pre><code>table["London"]["Cambridge"] = 120;
  </code></pre>
  
  <p>How to declare Collection or array that can handle this?
  I found solution but im not sure it is the best.</p>
  
  <pre><code>Dictionary&lt;string, Dictionary&lt;string, int&gt;&gt; test = new Dictionary&lt;string, Dictionary&lt;string, int&gt;&gt;();
  </code></pre>
  
  <p>But  when i wanna create a new value i need to initialize new dictionary, so why i thing that solution is not the rightest:</p>
  
  <pre><code>table.Add("London", new Dictionary&lt;string, int&gt; {{"Cambridge",120}});
  </code></pre>
  
  <p>So how in the best way create 2 dimensional array indexed by string (mayby create new class that can handle this)?</p>