private static void AddTagsToContext(TagContext tagContext, List<Tag> tags, List<PageTag> pageTags) { tagContext.Tags = new Dictionary<string, Tag>(); var tagsInContext = tags.Where(t => t.TagContextId == tagContext.TagContextId); foreach (var tag in tagsInContext) { var tagId = tag.TagId; var pages = pageTags.Where(p => p.TagId == tagId).Select(p => p.PageId); tag.Pages = new Collection<Guid>(pages.ToList()); tagContext.Tags.Add(tag.TagName.ToLowerInvariant(), tag); } }
private static void AddTagsToContext(TagContext tagContext, List <Tag> tags, List <PageTag> pageTags) { tagContext.Tags = new Dictionary <string, Tag>(); var tagsInContext = tags.Where(t => t.TagContextId == tagContext.TagContextId); foreach (var tag in tagsInContext) { var tagId = tag.TagId; var pages = pageTags.Where(p => p.TagId == tagId).Select(p => p.PageId); tag.Pages = new Collection <Guid>(pages.ToList()); tagContext.Tags.Add(tag.TagName.ToLowerInvariant(), tag); } }
private static void RemoveAllTagsForPage(Guid pageId, TagContext context) { var tagContextId = context.TagContextId; var tags = DataManager.Select <TagEntity>(t => t.TagContextId == tagContextId); if (tags.Count == 0) { return; } DataManager.Delete <PageTagEntity>(p => p.PageId == pageId && p.Tag.TagContextId == tagContextId); foreach (var tag in context.Tags) { tag.Value.Pages.Remove(pageId); } }
private static void RemoveAllTagsForPage(Guid pageId, TagContext context) { var tagContextId = context.TagContextId; var tags = DataManager.Select<TagEntity>(t => t.TagContextId == tagContextId); if (tags.Count == 0) { return; } DataManager.Delete<PageTagEntity>(p => p.PageId == pageId && p.Tag.TagContextId == tagContextId); foreach (var tag in context.Tags) { tag.Value.Pages.Remove(pageId); } }