Yes, we call the nested Load/Init/PreRender on all properties, regardless if they have Bind(None)
. The justification being that it’s usually much easier to deal with the Load being called multiple times than it not being called at all.
If you have trouble with this, note that you can override the GetChildViewModels
and either check that there are no duplicates, or remove them (just call .Distinct()
on it.). I’d probably stick to using methods, to make it clear which viewmodels are available client-side and which are just a proxy for some server-side code