Документы Microsoft говорят, что Convert.ChangeType возвращает
Объект, тип которого равен ConversionType и значение которого эквивалентно значению.
Я не уверен, что это значит. Вот мой сценарий.
ParentType parent = new ChildType();
Type type = parent.GetType();
parent.SomeMemberProperty = 1;
dynamic child = Convert.ChangeType(parent, type);
child.SomeMemberProperty = 2;
Что тогда является результатом parent.SomeMemberProperty
?
РЕДАКТИРОВАТЬ: Пожалуйста, игнорируйте простоту / глупость вышеописанного сценария. Это просто для того, чтобы продемонстрировать мою путаницу, и я бы никогда не написал этот код.