Imagine a simple controller action \[code\]IEnumerable<BaseType> Get()\[/code\]. It returns an enumeration of different types all deriving from BaseType.When the client requests XML, the result is something like this:\[code\]<ArrayOfBaseType> <BaseType i:type="DerivedType1"><A>value</A></BaseType> <BaseType i:type="DerivedType2"><B>value</B></BaseType> <BaseType i:type="DerivedType3"><C>value</C></BaseType></ArrayOfBaseType>\[/code\]As you can see, the type of the derived class is transmitted in the \[code\]i:type\[/code\] attribute.If the client requests JSON however, this information is missing:\[code\][ {"A":"value"}, {"B":"value"}, {"C":"value"}]\[/code\]How to fix this?