I am trying to do some intelligent serialization of my persistence capable classes. By intelligent I mean that only fields that were in an active fetchgroup during retrieval should be serialized (whether they are null or not).
Currently I am storing a transient list of properties that should be serialized in the model objects themselves. After retrieving the object I populate the list by inspecting the fetchgroups that were used for the retrieval. The list is then used by xsteam to determing if a property of the object should be serialized. It is working but it's neither pretty nor performant. Ideally, I want each active fetchgroup to fire a postload event and a callback receive a reference to the object being retrieved and a reference to the fetchgroup that generated the event. I could then inspect the fetchgroup attributes and populate my list. Unfortunately, the callback only gets a reference to the object being retrieved so I cannot figure out which properties were loaded.
Any insite is much appreciated.