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");
 }
        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);
                }
            }
        }