public IEnumerable <Top5List> GetListsByTags1(string Tag1) { TagComparer comparer = new TagComparer(); return(db.Top5List. Include(p => p.Items). Include(p => p.Tags). Where(p => p.Tags.Any(t => t.TagText.Contains(Tag1)))); }
public IEnumerable<Top5List> GetListsByTags1(string Tag1) { TagComparer comparer = new TagComparer(); return db.Top5List. Include(p => p.Items). Include(p => p.Tags). Where(p => p.Tags.Any(t => t.TagText.Contains(Tag1))); }
public TagComparerTests() { _sut = new TagComparer(); }
private DekiResourceBuilder CompareTagSets(List <TagBE> current, List <TagBE> proposed, out List <TagBE> added, out List <uint> removed) { // perform a subtraction of tags (in both directions) to determine which tags were added and removed from one set to another added = new List <TagBE>(); removed = new List <uint>(); TagComparer tagComparer = new TagComparer(); current.Sort(tagComparer); proposed.Sort(tagComparer); // determine which pages have been added StringBuilder addedSummary = new StringBuilder(); List <TagBE> addedList = new List <TagBE>(); foreach (TagBE proposedTag in proposed) { if ((current.BinarySearch(proposedTag, tagComparer) < 0)) { // only add the tag if is not already being added bool includeTag = (added.BinarySearch(proposedTag, tagComparer) < 0); if (includeTag && (TagType.TEXT == proposedTag.Type)) { TagBE proposedTagDefine = new TagBE(); proposedTagDefine.Type = TagType.DEFINE; proposedTagDefine.Name = proposedTag.Name; if (0 <= proposed.BinarySearch(proposedTagDefine, tagComparer)) { includeTag = false; } } if (includeTag) { added.Add(proposedTag); if (1 < added.Count) { addedSummary.Append(", "); } addedSummary.Append(proposedTag.PrefixedName); } } } // determine which pages have been removed StringBuilder removedSummary = new StringBuilder(); foreach (TagBE currentTag in current) { if (proposed.BinarySearch(currentTag, tagComparer) < 0) { removed.Add(currentTag.Id); if (1 < removed.Count) { removedSummary.Append(", "); } removedSummary.Append(currentTag.PrefixedName); } } // create a diff summary string var diffSummary = new DekiResourceBuilder(); if (0 < addedSummary.Length) { diffSummary.Append(DekiResources.TAG_ADDED(addedSummary.ToString())); } if (0 < removedSummary.Length) { if (!diffSummary.IsEmpty) { diffSummary.Append(" "); } diffSummary.Append(DekiResources.TAG_REMOVED(removedSummary.ToString())); } return(diffSummary); }