On Monday, 17 February 2014 at 06:09:35 UTC, Rory McGuire wrote:Unfortunately the only why to get a value of field by reflection requires the static type to be known. When serializing through a base class reference the static type is lost. Therefore it's required to register the subclass, one way or another.
A base class reference is: from your example an A which actually contains a
C or B.
Honestly I haven't tried this I would have assumed that D still gives you
the real type when using reflection but have you tried it?
--
/Jacob Carlborg