Howdy,
Let's say I have the following relationship where ClassB conains a ClassC(Source) and it contains a ClassD(Source) as follows :
ClassB (1 -> 1) ClassC (1 - > 1) ClassD
OK, given the relationship above, let's say I have a ClassA which contains a collection of ClassB(Source) called CollectionB and I would like to DeepLoad ClassA where the include child types are CollectionB, ClassC and ClassD.
Let's say that the id's of the first 2 elements of CollectionA and their child types which should be loaded are as follows :
CollectionB[0](Id:11) -> ClassC (Id:44) -> ClassD (Id:77)
CollectionB[1](Id:22) -> ClassC (Id:55) -> ClassD (Id:77)
When using the Deepload functionality of nettiers, the first element of collection deeploads correctly but the ClassD instance in the second element is not loaded. The reason behind this is that the HasProperty method seems to signal that the ClassD with 77 as an id has already been loaded within the object graph and does not load the remainder instances of any ClassD objects with this id.
I presume that this is used to stop recursive loading.
Would it not be better to simply hold a reference to the already existing ClassD and use that reference instead of setting it to null? Therefore if a reference is used, we can presume that it has already been deeploaded and therefore do not need to deepload it again and hence resolving the recursive issue that this was created to solve.
Hopefully my example was easy to follow.
Thanks Tecknick