title: Cannot implicitly convert type System.LinQ.IOrderedEnumerable to MyClassCollection. An implicit conversion exists(are you missing a cast?)
body: <p>I have following classes in my project.</p>
  
  <pre><code>[Serializable]
  public class BaseEntityCollection&lt;T&gt; : List&lt;T&gt; where T : BaseEntity, new()
  {
  
      protected BaseEntityCollection()
      {
      }
  
  }
  
  [Serializable]
  public abstract class BaseEntity
  {
      protected BaseEntity()
      {
      }
  }
  
  
  public class MyClassCollection : BaseEntityCollection&lt;MyClass&gt;
  {
  }
  </code></pre>
  
  <hr>
  
  <h2>Problem Area</h2>
  
  <pre><code>MyClassCollection objList = 
  MyClassName.MyFunctionName().OrderByDescending(i =&gt; i.MyPropertyName);
  </code></pre>
  
  <h2>This line is giving compilation error.</h2>
  
  <pre><code>Cannot implicitly convert type System.LinQ.IOrderedEnumerable&lt;MyClass&gt;
  to MyClassCollection. An implicit conversion exists(are you missing a
  cast?)
  </code></pre>
  
  <h2>EDIT</h2>
  
  <p><strong>I don't have the privilege to change the Architecture design.</strong></p>