private void CreateInlineObjects(INakedObjectAdapter parentObjectAdapter, object rootObject) { var spec = parentObjectAdapter.Spec as IObjectSpec ?? throw new NakedObjectSystemException("parentObjectAdapter.Spec must be IObjectSpec"); foreach (var assoc in spec.Properties.OfType <IOneToOneAssociationSpec>().Where(p => p.IsInline)) { var inlineObject = CreateObject(assoc.ReturnSpec); InitInlineObject(rootObject, inlineObject); var inlineNakedObjectAdapter = nakedObjectManager.CreateAggregatedAdapter(parentObjectAdapter, assoc.Id, inlineObject); InitializeNewObject(inlineNakedObjectAdapter, rootObject); assoc.InitAssociation(parentObjectAdapter, inlineNakedObjectAdapter); } }
private void CreateInlineObjects(INakedObjectAdapter parentObjectAdapter, object rootObject) { var spec = parentObjectAdapter.Spec as IObjectSpec; Trace.Assert(spec != null); foreach (IOneToOneAssociationSpec assoc in spec.Properties.OfType <IOneToOneAssociationSpec>().Where(p => p.IsInline)) { object inlineObject = CreateObject(assoc.ReturnSpec); InitInlineObject(rootObject, inlineObject); INakedObjectAdapter inlineNakedObjectAdapter = nakedObjectManager.CreateAggregatedAdapter(parentObjectAdapter, assoc.Id, inlineObject); InitializeNewObject(inlineNakedObjectAdapter, rootObject); assoc.InitAssociation(parentObjectAdapter, inlineNakedObjectAdapter); } }