Is it possible to make an anonymous class inherit another class?
Cannot extend an anonymous but you could declare your method to accept a dynamic parameter if you really need this to work.
No. Anonymous types always implicitly derive from object
, and never implement any interfaces.
From section 7.6.10.6 of the C# 5 specificiation:
An anonymous object initializer declares an anonymous type and returns an instance of that type. An anonymous type is a nameless class type that inherits directly from
object
.
So if you want a different base class or you want to implement an interface, you need a named type.
No. From the documentation:
Anonymous types are class types that derive directly from object, and that cannot be cast to any type except object.
To solve your problem, just replace the anonymous type with normal class...
Short answer: no
Long answer: You could use a C# proxy class. There are several tools that can proxy classes. For example Moqs. https://github.com/moq/moq4