Я пишу функцию Clone для не сериализуемого объекта. Для большинства объектов меня не волнует, копируются ли они мелко, поскольку я не буду вносить в них изменения.
Я начинаю с MemberwiseClone, и это копирует все значения и несколько объектов, таких как словарь конфигурации, просто отлично, но они являются указателями.
EAVEntity newClone = (EAVEntity) this.MemberwiseClone();
newClone.EntityStorageID = Guid.NewGuid();
newClone.Controls.Clear();
Так как мне сбросить указатель, чтобы я мог не указывать на одно и то же место?