c# Create generic list dynamically at runtime
<p>Following the example on <a href="https://stackoverflow.com/questions/2078914/creating-a-generict-type-instance-with-a-variable-containing-the-type">this post</a>, I found out how to create a list of generic types dynamically.
Now, my issue is that I want to <strong>ADD</strong> items to the created list from an unknown source list - is there some way to achieve this?</p>

<p><strong>EDIT</strong>
I start with a source list containing business objects, but I absolutely need the right type of my output list, because of downstream bindings that require it.</p>

<p>My non-compiling code is as follows:</p>

<pre><code>IList&lt;object&gt; sourceList; // some list containing custom objects
Type t = typeof(IList).MakeGenericType(sourceList[0].GetType());
IList res = (IList)Activator.CreateInstance(t);
foreach (var item in sourceList) {
    reportDS.Add(item); // obviously does not compile
}
</code></pre>