Returning generic interface and child implementations from a method
<p>I have a generic interface where the type constraint is an abstract base class.</p>

<p>So the implementations may be of different implementations.</p>

<p>Although this is fine, when I try to return a concrete implementation (such as ITestImplementation) from a method which is set to return the interface (eg ITest), this throws various compile time errors in Visual Studio about implicit casts.</p>

<p>Code:</p>

<pre><code>ITest&lt;Control&gt;
{
  void Execute();
}
</code></pre>

<p>I use this interface in various places and return a method as above. Maybe I should use a generic type placeholder.</p>

<p>Is this not possible?</p>

<p>Thanks</p>
