title: Reflection PropertyInfo.GetValue from Collection
body: <p>I have problem with reflection, dynamic invoking objects and reading collection values.<br>
  In Referenced COM/Interop it would look like this:</p>
  
  <pre><code>ICollection collection = (ICollection)sth.getCollection("parameter");
  SomeObject obj = (SomeObject)collection["id='1'"]; //DB WHERE condition
  </code></pre>
  
  <p>Unfortunetly i need to make it with reflection and dynamic invoking object. Getting collection is rather easy, but reading "obj" is different story. How should i wrote this?</p>
  
  <pre><code>object oICollection = sthGetCollectionMethod.Invoke(
      sthInstance, BindingFlags.Instance | BindingFlags.Public, null,
      new object[1] { "parameter" },
      System.Globalization.CultureInfo.InvariantCulture);
  //and here is the problem:
  //how to access object as array/hashtable collection?
  object obj = tICollection.GetProperty("???").GetValue(oICollection, ???);
  </code></pre>
  
  <p>I should add that in object browser i see "this[v object]", but in <code>ICollection.GetMethods()</code> i'm getting property Item (<code>System.Object</code>) (which is invisible/not there in Object Browser)</p>