Have you considered whether it makes sense to name the properties the same way in the several domain classes? It would avoid these changes. You could even extract them into a separate interface to enforce it. That said, this does't look that bad, except for the missing space around the `+` operator.