Yeah, I get all that, but still frustrating. It’s all about balance) There were 2 huge DTOs with all the same properties but the name of 1 id(one entity was split into 2), So what I did, is fill an expando object with all the properties, including both ids, and then just call a simple method that created an instance of a generic target type with filled properties from the expando. Then I would just call this method with one of this 2 types as target when I need them. The method is just 4 lines on creating an instance and filling it using for each over expando’s dictionary. That’s it. Maybe it’s just my bias, but to me it’s simple, takes little space and just 1 method. Would appreciate any feedback)