private void RemoveTagsByIcon(TagsCollectionBase tags, string icon) { var tagsList = _tagsHelper.FindTagsForIcon(icon); if (tagsList.Any() == false) { return; } foreach (var keyValuePair in tagsList) { var tag = tags.FirstOrDefault(t => t.Key == keyValuePair.Key && t.Value == keyValuePair.Value); if (tag.Equals(default(Tag)) == false) { tags.RemoveKeyValue(tag); // removing only one matching tag return; } } }