Thanks for your replies.
I'm working on a UI Mapper which is a modification of Paul Wilson's UI Mapper. http://www.uimapper.net
An entity's fields need to be mapped onto UI elements. The code just iterates over the entity's fields copying the value back and forth between the corresponding UI element.
But my modification allows a user to modify an entity and one of its related entities in the same UI. The related entity can be mapped to a special UI element which then further maps the related entity's fields to standard UI elements. (So this is using nesting.)
So, as I hope you can see from my description, the property on the entity which references the related entity needs to be just another data field so that the UI mapping code can treat it like any other field.
I'm currently using reflection.
Ian.