Why is there a DataPortal.FetchChild?

Why is there a DataPortal.FetchChild?

Old forum URL: forums.lhotka.net/forums/t/11938.aspx

csmith1 posted on Tuesday, April 16, 2013

 Why is this ever needed? BusinessListBase know to mark their items a Children. There appears to be some confusion how to implement Child_Fetch. In the documentation some times it is passed a search criteria and some time it is passed a data transfer object. I do not see an example of implement Child_Fetch with a data factory implementation. Why not just call DataPortal.BeginFetch? Why write a readonly object to call DataPortal.FetchChild on the server?

JonnyBee replied on Wednesday, April 17, 2013


This also depends on how your application is configured.

BeginFetch may send the criteria over wire to another computer (N-tier) while ChildFetch will always run in-process.

If by data factory implemententation - you mean ObjectFactory implemententation, then you would/should never use DataPortal.FetchChild but rather call the corresponding ObjectFactory class to get the object.

A read-only object may be used as UnitOfWork (UoW) loader) - to load all the lists and objects required for a form. This is in particular nice for async loading of data and lists for a single screen - rather than have a number of async data portal calls and make sure to handle callbacks in the proper sequence (ex: databind all list for combobox'es befor databinding the actual BO).

Copyright (c) Marimer LLC