private void FillTags(CmsPage page) { if (null == page) { return; } page.Tags.Clear(); if (null != page.TagString && !string.IsNullOrEmpty(page.TagString.AttemptedValue)) { string[] tags = page.TagString.AttemptedValue.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach (string tag in tags) { string tagName = tag.Trim(); if (string.IsNullOrEmpty(tagName)) { continue; } CmsTag cmsTag = pageData.LoadTag(tagName); if (null != cmsTag && !page.Tags.Contains(cmsTag)) { page.Tags.Add(cmsTag); } else { IEnumerable <CmsTag> alreadyCreated = page.Tags.Where(x => x.Name == tag.Trim()); if (alreadyCreated.Count() == 0) { page.Tags.Add(new CmsTag { Name = tag.Trim() }); } } } } }