Unable to cast object of type 'System.Collections.Generic.List`1[Item]' to type 'ItemList'
<p>For some reason, my boss likes to create custom types to represent a generic list  (even in most cases where his custom type has no members!  I think he's just lazy and doesn't like to type the List or something but to me this is lame and is causing me many headaches per the issue below.</p>

<p>Point in case:</p>

<pre><code>public class ItemnList : List&lt;Item&gt;
{
 public Personalization FindById(int id)
 {
  ...blahblah blah, this is really an extension method that should be elsewhere
 }

}
</code></pre>

<p>Consequently, when I'm using a standard List (mabye I hate his custom class and like to use plain .NET types like they should be used), OR maybe I'm using a LINQ expression like below, I always run into casting problems even though the custom type is inheriting from that List</p>

<pre><code>private ItemList someMethod(ItemList itemList)
{
    ...
    itemList = (ItemList)items.Where(x =&gt; x.ItemType != ItemType.Car &amp;&amp; x.ItemType != ItemType.Truck).ToList();

    return itemList;
    ....
}
</code></pre>
