public RelatedContent(IRelatedItemConfiguration content, IRelatedContentFilter parameters)
 {
     Content      = content;
     Parameters   = parameters;
     RelatedItems = new List <IPage>();
 }
        private RelatedContent GetRelatedTaggedContent(IRelatedItemConfiguration configItem, IRelatedContentFilter parameters)
        {
            int            count     = 0;
            RelatedContent viewModel = new RelatedContent(configItem, parameters);

            foreach (var item in configItem.FilterRoot.Children)
            {
                if (count == parameters.DisplayCount)
                {
                    break;
                }

                if (parameters.Tags.Select(x => x.Text).Intersect(item.ProductTags.Select(x => x.Text)).Any())
                {
                    viewModel.RelatedItems.Add(item);
                    count++;
                }
            }

            return(viewModel);
        }