InvalidCastException: Unable To Cast Objects of type [base] to type [subclass]
You’ve got it in reverse: A cast from an object of a base class to a subclass will always fail, because the base class has only the properties of the the base class (not the subclass). Since, as you say, the subclass has all the properties of the base class (it “is-a” base-class object), then … Read more