/// <summary> /// See <see cref="IMutableLookup{TKey,TValue}.Add(TKey,TValue)" />. /// </summary> public void Add(TKey key, TValue value) { MutableGrouping group; if (!_values.TryGetValue(key, out group)) { group = new MutableGrouping(key); _values[key] = group; } group.Add(value); }
private void MakeGroups(List <ArticleItem> articles) { articles.Sort(); var groups = from c in articles group c by c.Key; foreach (var g in groups) { var existing = GroupedArticles.FirstOrDefault(e => e.Key == g.Key); if (existing != null) { existing.InsertToGrouping(g); } else { var mutableGroup = new MutableGrouping <int, ArticleItem>(g); //GroupedArticles.Add(mutableGroup); GroupedArticles.BinaryInsert(mutableGroup); } } }