title: Generic property in a non-generic class?
body: <p>I'm not sure how to go about this...</p>
  
  <p>I have a class that performs various functions:</p>
  
  <pre><code>public abstract class EntityBase { ... }
  
  public interface ISomeInterface&lt;T&gt; where T : EntityBase, new() { ... }
  
  public class SomeClass&lt;T&gt; : ISomeInterface&lt;T&gt; { ... }
  </code></pre>
  
  <p>I'm trying to have a cache of these in a non-generic class:</p>
  
  <pre><code>public class MyClass
  {
      //Not sure how to do this
      private ConcurrentDictionary&lt;?, ISomeInterface&lt;?&gt;&gt; Cache { get; set; }
  }
  </code></pre>
  
  <p>The problem is that EntityBase is abstract and can not do new(), The ISomeInterface expects a class that is based off EntityBase and does new(). Is there any way to do what I'm wanting to do?</p>
  
  <hr>
  
  <p>Update: I realized that for the TKey I can use Type, but I still am not sure what to put for the ISomeInterface.</p>