public void RecalculateSearchItemCounts() { foreach (FeatureSearchGroup searchGroup in SearchGroups) { var matchingEntities = SearchableEntities.Where(item => item.SearchGroupKey == searchGroup.SearchGroupKey); searchGroup.ItemCount = Convert.ToInt16(matchingEntities.Count()); } this.RaisePropertyChanged("SearchGroupDisplayList"); }
private void AssignOwningSearchGroupId(ISearchableEntity entity) { if (entity.SearchGroupId > 0) { entity.OwningSearchGroupId = entity.SearchGroupId; } else { //Find the corresponding entity that is assigned to its owning search group. ISearchableEntity owningItem = SearchableEntities.FirstOrDefault(item => item.Id == entity.Id && item.SearchGroupId > 0); if (owningItem != null) { entity.OwningSearchGroupId = owningItem.SearchGroupId; } } }
public void AssignSearchProperties() { foreach (FeatureSearchGroup searchGroup in SearchGroups) { var matchingEntities = SearchableEntities.Where(item => item.SearchGroupKey == searchGroup.SearchGroupKey); foreach (ISearchableEntity entity in matchingEntities) { entity.SearchGroup = searchGroup; entity.CanNameChange = searchGroup.CanNameChange; entity.CanSearchKeyChange = searchGroup.CanSearchKeyChange; entity.SearchGroupId = searchGroup.SearchGroupId; AssignOwningSearchGroupId(entity); } } }