private void InitializerTermsLoader(OptionItemContainerPart part) {
                foreach (var field in part.ContentItem.Parts.SelectMany(p => p.Fields).OfType<OptionSetField>()) {
                    var tempField = field.Name;
                    var fieldTermRecordIds = part.Record.OptionItems.Where(t => t.Field == tempField).Select(tci => tci.OptionItemRecord.Id);
                    field.OptionItemsField.Loader(value => fieldTermRecordIds.Select(id => _contentManager.Get<OptionItemPart>(id)).ToList());
                }

                part._optionItemParts.Loader(value => 
                    part.OptionItems.Select(
                        x => new OptionItemContentItemPart { Field = x.Field, OptionItemPart = _contentManager.Get<OptionItemPart>(x.OptionItemRecord.Id) }
                        ));
        }
        private void InitializerTermsLoader(OptionItemContainerPart part)
        {
            foreach (var field in part.ContentItem.Parts.SelectMany(p => p.Fields).OfType <OptionSetField>())
            {
                var tempField          = field.Name;
                var fieldTermRecordIds = part.Record.OptionItems.Where(t => t.Field == tempField).Select(tci => tci.OptionItemRecord.Id);
                field.OptionItemsField.Loader(value => fieldTermRecordIds.Select(id => _contentManager.Get <OptionItemPart>(id)).ToList());
            }

            part._optionItemParts.Loader(value =>
                                         part.OptionItems.Select(
                                             x => new OptionItemContentItemPart {
                Field = x.Field, OptionItemPart = _contentManager.Get <OptionItemPart>(x.OptionItemRecord.Id)
            }
                                             ));
        }